1 名前:d mailto:age [2008/03/30(日) 09:01:59 ] このスレッドはVBについて、 他のスレッドでは書き込めない超低レベル、 もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。 VB使いが優しくコメントを返しますが、 お礼はVBの布教はしなくてよいので、初心者の救済をお願いします 前スレ くだすれVB6.0以前(超初心者向け) pc11.2ch.net/test/read.cgi/tech/1165574205/
45 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 21:35:48 ] インスタンスのコピーは例えば A a B b なるインスタンスa,bがあったとして b = a でいいでしょうか? それともb = a.clone or a.copyなるコピー関数をかかないといけないんでしょうか?
46 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 21:53:49 ] コピー関数が必要。 オブジェクトの代入がコピーでないことを示すために、 Set b = a と書くようになっている。 なお、Stringはオブジェクトではなく型扱いなので代入でコピーが発生する。
47 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 22:41:03 ] くそっ、そういうことしたかったら、Typeの構造体のほうが便利だな。
48 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 22:49:23 ] すんげー長い関数func1(....)が超よみにくいので sub_func1..... func2 にわけてやろうとおもって3時間ほどトライしているのですが 内部で使われる構造体をずっと参照でわたしていって 深くなってくると値がかわってくれてないような>< なんか深さに制限あるんでしょうか。 実際には、3000行ある処理を30行くらいの関数にわけていって おります。 type M end func1() dim m1 as M_t func2(m1) func3(m1) end end end end end end private func2(byref m as type M) private func3(byref m as type M)
49 名前:デフォルトの名無しさん [2008/09/01(月) 11:00:44 ] 基本のグローバル変数、アニメーションがわかりません。 ご提示お願いします。
50 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 20:27:47 ] t(50000,1) の配列にはいってる数値を、CSVで出力したいんだが、 for i=0 tmp=tmp & t(i,0) & "," & t(i,1) & vcrlf next i open "t.csv" For Binary Access Write As #1 Put #1, , tmp close #1 で、tmpに溜め込んでバイナリで書き込もうとしたんですが、 tmpの後に追加していくと、行数が多くなるとだんだん重くなってしまいます。 もっと高速に保存する方法はないでしょうか? Put #1, , t() これが、怪しいような気がするんですが、、、
51 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 20:42:45 ] したいんだが、・・・・・・ >>50 遅いのは恐らく文字列の連結。(遅い理由はVBは文字列の連結ごとにメモリの確保と コピーが入るから) 解決法は、確かmid$を使った文字列の高速な連結法があったはずだから ググってそれを使う。 それが面倒なら、変数上で連結なんてせずに直接ファイルに追記すれば 少しはマシになるはず。
52 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 22:23:16 ] テキストファイルを書き出すのになんでFor Binary Accessなんだ?
53 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 22:24:31 ] つsystem.text.stringbuilder
54 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 22:32:21 ] つ、とかヲタっぽい気色のわるい書き方する奴って例外なくアホだな
55 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 22:36:09 ] つ よりもVB6で stringbuilderのほうが痛いな
56 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 23:00:44 ] Dim sb As Object Set sb = CreateObject("System.Text.StringBuilder") sb.AppendFormat "{0}", "やればできるさ" Text1.Text = sb.ToSTring AppendLineがなぜかComコンパチじゃなくて使いにくいな。正直おすすめしない(笑
57 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 06:47:52 ] VB6ならFSOでおk
58 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 16:06:18 ] つ System.IO.StringWriterのWriteLine
59 名前:デフォルトの名無しさん mailto:sage [2008/09/18(木) 20:27:20 ] >>48 どこかのByRefで渡す筈の引数に、ByValが紛れ込んでいるとか。 それくらいの規模になってきたら、そろそろ設計図書いた方が良いかもしれない。 >>49 グローバル変数とは、Publicで宣言された変数のこと。 引数に値を渡す必要が無いメリットがあるものの、 どこからでも読めてしまうデメリットは 最終的にデバッグを非常に困難にする為、扱いに非常に困る。 アニメーションは、そのままだな。 映画館の映写機みたいなイメージで 1秒間に最大60回くらい画面書き換えたりする事。 >>50 Valiant型使っておいて遅いとか言っちゃダメですぜ。
60 名前:59 mailto:sage [2008/09/18(木) 23:48:31 ] >>50 この環境にVB6入ってないからデバッグできてない挙句に、久し振りすぎてあちこち怪しいが、草案だけ出しておく。 Const MAX_X = 1 '配列の要素数が固定であるならば、 Const MAX_Y = 50000 'Constを使っておくと修正が楽。 Private t(MAX_Y,MAX_X) As Long '--------メイン-------> Private Sub mn_Save_Click() 'セーブを要求する場合。例として、メニューの保存辺りから呼ぶとして…。 Dim Ret As Integer Ret = MsgBox("セーブする?",vbOkOnly) Select Case Ret Case vbOK Debug.Print "csvKakiko => FileName:" & App.Path & "t.csv" '一応、送られた文字列を確認。 Call csvKakiko(App.Path & "t.csv") End Select End Sub '----保存とか---> Private sub csvKakiko(ByVal FileName As String) 'csvに書き込む。/引数:FileName:ファイル名/絶対パス Dim Fnum As Integer Dim i As Long,i_Max As Long Dim tmp As String Fnum = FreeFile() '※必須。Closeされていないファイルナンバーを用いてOpen処理以降を発生させると別のファイルに書いてしまったりする。 Open FileName For Binary Access Write As #Fnum For i=0 To MAX_Y '0から構造のY最大値まで昇順。(MAX_Yが50000なので、0-50000の50001レコードが記述される。) tmp= Format(t(i,0)) & "," & Format(t(i,1)) & vbCrLf '記録する文字列を組みながら Put #Fnum, , tmp '記録する。 Next Close #Fnum End Sub
61 名前:デフォルトの名無しさん mailto:sage [2008/09/20(土) 18:41:23 ] VBからIE操作する際の話なんですが、 IEを起動時 or 起動後にJavaScriptを切る方法ってないでしょうか? バージョンはIE8beta2ですがIE6の方法でも構いません
62 名前:デフォルトの名無しさん mailto:sage [2008/09/20(土) 21:24:44 ] Document.designMode="on"
63 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 13:59:12 ] Document.designMode="on"で検索したけどそれらしきものが見当たらない
64 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 14:26:02 ] www.google.co.jp/search?hl=ja&q=Document.designMode= "on"
65 名前:デフォルトの名無しさん [2008/09/22(月) 23:07:09 ] IEでダイヤログ(はい、いいえを選択するやつです)が出てきた時に 最初からはいが選択されてる状態で 自動的にエンターキーを押させてはいを決定させたいのですが SendKeys "{ENTER}", True これでいけると思ったのですが反応しません 自分でキーボードのエンターキーを押すともちろん反応します 何か手違いか、他に方法ありますでしょうか?
66 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 23:18:02 ] キーボードドライバを作成してそれに向かって操作しろ どうでもいいが、間違いの予想はいくつか出てくるがソース出せやクソガキ
67 名前:デフォルトの名無しさん mailto:sage [2008/09/23(火) 01:26:08 ] >>65 IEのダイヤログが出る部分の設定を全部「常に許可」に設定すればVB側で弄らなくても解決する。
68 名前:デフォルトの名無しさん mailto:sage [2008/09/23(火) 21:41:24 ] keybd_event() or SendInput()
69 名前:デフォルトの名無しさん [2008/09/24(水) 10:08:00 ] 結構古い(と思われる)VBのソース見てて 疑問に思ったんで教えて欲しいです。 a=&H100& みたいに数字の後に & が付いているのは何ですか? 数字の前の&Hはなんとかわかるんですが・・・ 参考書とか読んでも & は「文字列を連結するための・・・」 とかしか出てなくて。
70 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 10:15:36 ] おまえは一冊しか本を持ってないのか?MSDNは読めないのか?馬鹿なの?
71 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 12:49:27 ] >>69 ただの16進数の書式だったかと。 後ろの『&』無しでも普通に動いてると『&』が後ろについてる理由が解らんのだよな。 『&』は、単独ならString型データの結合の演算子として扱う。(一応、『+』演算子でも動作する恐怖。) Sub Main '以下の一文で 255 が出力される。@formatを用いているのは、返されたByte型の255の値を文字列型にする為。 Debug.Print format(changeHexStringToByte("ff")) End Sub Private Function changeHexStringToByte(ByVal HexStringNN As String)As Byte changeHexToValue = Val("&H" & HexStringNN & "&") '文字列を作って無理矢理Valに通す。 End Sub
72 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 12:55:29 ] 嘘を教えるのはよくない。
73 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 13:11:22 ] 覚え間違えてたわ。サンクス。m(_ _)m>>72
74 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 13:21:00 ] &を後置するのは16進数Long型扱いらしい? 調べてみたのだが、いまいち自信が持てない。 (&H0000はInteger型で扱われる。≒最上位ビットが1の場合はマイナス符号化?) 今まで&H0000&のみしか使ってなかったし、何やら損した気分に。orz
75 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 13:29:56 ] 16進数Long型ってなんですか
76 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 15:33:49 ] MsgBox TypeName(&H8000) MsgBox TypeName(&H8000&)
77 名前:71,73,74 mailto:sage [2008/09/24(水) 15:50:55 ] >>76 なるほど納得。 ヒントに感謝です。m(_ _)m
78 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 16:10:02 ] MsgBox &H8000 MsgBox &H8000& MsgBox &H8000=&H8000&
79 名前:77 mailto:sage [2008/09/24(水) 18:15:36 ] >>78 ありがとう。数値の扱われ方が何となく解った気がします。 &HFFFFでやってみたら-1と65535になりました。 調べてみたらこんなのが…。 16進数表記:格納されているデータの2進数:10進数(アンダースコアは便宜上の物) &H8000:1000_0000_0000_0000:-32768 &HFFFF:1111_1111_1111_1111:-1 &H0000:0000_0000_0000_0000:0 &7FFF:0111_1111_1111_1111:32767 &H8000&:0000_0000_0000_0000_1000_0000_0000_0000 切欠を貰えた事にも感謝します。m(_ _)m
80 名前:デフォルトの名無しさん [2008/09/24(水) 21:43:07 ] VB6.0です button1からbutton30を作って、同じform内に button100からbutton130を作るって出来ますか? button31からbutton99は使用しないです。作成も したくないです。 質問してて、無理っぽいと思ってますが、どうでしょうか?
81 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 21:55:03 ] できます
82 名前:デフォルトの名無しさん [2008/09/24(水) 23:17:43 ] え?
83 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 08:56:55 ] >>80 1〜130作って31〜99を消せばいい。 しかし、そこまで多くなったら素直に配列化した方が良いと思う。 フォームに貼り付けたコントロールをコピペするだけで配列化できるから 試してみた方が良いかも。
84 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 09:42:51 ] for 1から30 load ボタン objectの配置 next for 100から130 load ボタン objectの配置 next
85 名前:デフォルトの名無しさん [2008/09/25(木) 14:26:19 ] 初めまして VB6でDoEventsを入れると コマンドボタンのEnabledがTrueになるんですけど… 例 command1.Enabled=False DoEvents ここで勝手にcommand1のEnabledがTrueになっています 仕様ですか?
86 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 15:00:20 ] バグとか仕様とか言う前に自分のミスを疑えよ
87 名前:デフォルトの名無しさん [2008/09/25(木) 15:33:26 ] >>86 実際にEnabled=False の真下でDoEventsしたらTrueになってるから聞いてるんですけど? 何でも上から目線で威圧的に言えば良いってものではないですよね ここでしか偉そうに出来ないからそんな態度なんですか? 恥ずかしい人ですね
88 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 15:49:41 ] >>85 それだけのソースだと判断できないと思うが。 その場所でcommand1のEnabledがTrueになったって確実に言い切れるほど 原因が追求できているなら、問題は既に解決してしまっている訳だからね。 はい、次の人どうぞ。
89 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 16:37:58 ] それが起きるミニマムのソースをはったらまともに取り合ってもらえると思うよ。
90 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 16:44:20 ] ミートのソースはうまいよ。
91 名前:デフォルトの名無しさん [2008/09/25(木) 18:54:53 ] デバッグで止めて見て分かりました DoEventsで止めて画面を見るとcommand1の文字がきちんと薄くなっている のにDoEventsの次の行で止めると文字は押せる状態の通常色になっていました ちなみに上の2回は1回の実行で連続して確認した訳ではなく 1回目の実行ではDoEvents、2回目の実行では次の行という風にしました これで分かって頂けるでしょうか? なのでここ以外のソースは関係ないと思っています
92 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 20:09:30 ] >>91 Command1_Clickでやってみたけど(ここはあってる?こういうのの確認にソースがいるってこと) 再現しないね。 検索で Command1.Enable = Trueのところを全部探してごらんよ。 あったらそこにもブレークポイントを入れてみる。
93 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 20:59:17 ] >>91 DoEventsする前におまえの書いたコードでイベントが発生していて そのハンドラでおまえが自分でEnable=Trueにしてるからなるんだよ こんな程度のことでコンパイラ疑うとか図々しいにもほどがある
94 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 23:46:14 ] じゃあ、 DoEvents command1.Enabled=False DoEvents こうすれば直るよw
95 名前:デフォルトの名無しさん [2008/09/26(金) 09:11:06 ] 今さらっとこのスレ見たけど やっぱくだらないスレだわ 役に立ってるかもしれんが 相手のことをおまえだとか 自分に知識があるからと偉そうな態度だわで 人格疑うよ ここは超初心者向けのスレじゃないのか… がっかりだね
96 名前:デフォルトの名無しさん mailto:sage [2008/09/26(金) 09:13:05 ] >>95 >>85 さん、おはようございます
97 名前:デフォルトの名無しさん mailto:sage [2008/09/26(金) 10:38:36 ] だってここ、もともと本スレじゃないし。全体的にネタに走ってるのはしょうがないな。
98 名前:デフォルトの名無しさん mailto:sage [2008/09/26(金) 13:05:39 ] おはようございます 85です えっと、とりあえず95は俺じゃないよ? さっき起きただけだし… Enabled=False のすぐ下でDoEventsしても他のプログラムが走るってこと? なんかよく分からないね 難しい
99 名前:デフォルトの名無しさん mailto:sage [2008/09/26(金) 13:55:14 ] 新規のフォームにボタン2つとラベル1つ貼り付ける。 これで1の処理中に2のボタンが押せる。 情報を出したがらないから直接の原因と結果とは結びつかないが、 これに近い現象だとみんな思ってるはずだよ。 Private Sub Command1_Click() Dim i As Long Command1.Enabled = False For i = 0 To 50000 Label1.Caption = i DoEvents Next Command1.Enabled = True End Sub Private Sub Command2_Click() Command1.Enabled = True End Sub
100 名前:デフォルトの名無しさん mailto:sage [2008/09/26(金) 15:33:52 ] えっとですね Command2のボタンを押すと情報をグリッドに表示させるという処理があって Command1のボタンを押すとグリッドから選んだデータの情報を詳しく表示させるという 感じのプログラムなんですけど Command2のボタンを押して情報検索したり表示したりという処理中は Command1のボタンを押せないようにしようとしています なので Command2のボタンを押した時にCommand1のボタンのEnabled=Falseにして 処理が終わった時に Command1のボタンのEnabled=Trueにする処理を書いています 実際にDoEventsを書いているのはFalseにしている場所とかなり離れているのですが そこでTrueに変わって押下可能状態になっていたので DoEventsを少しずつFalseの場所に近づけて実行を繰り返したんですが 結局はFalseの真下に書いた状態でもTrueになっている事が分かったので 訳が分からなくなったという状態です って説明結構苦手なので分かってもらえるかは不安ですが こんな感じです
101 名前:デフォルトの名無しさん mailto:sage [2008/09/26(金) 15:52:03 ] バグだからマイクロソフトに連絡しろ。それで気が済むんだろ!
102 名前:デフォルトの名無しさん mailto:sage [2008/09/26(金) 16:31:25 ] >>100 そのフォームのすべてのイベントの最初でログを出すように してみるといいよ。 たぶん予想していないイベントが発生してると思うよ。 DoEventsは難しい。
103 名前:デフォルトの名無しさん mailto:sage [2008/09/26(金) 16:33:45 ] >>95 罵倒されるのが嫌なら書込まなきゃいい そんだけ・・・ もうくんなよ ってそのうち書かれるよん。 VBの情報なんてネット上にゴロゴロしてるわけだしヒントもらえればラッキーくらいじゃないとねぇ 回答者の立場で考えてみてくれ 情報を後出しされるということは どんだけいろんなパターンを想定して回答しなきゃならないかを ぶしつけな質問にはそういう回答にならざる終えない宿命をかかえているという事だ
104 名前:デフォルトの名無しさん mailto:sage [2008/09/26(金) 17:39:47 ] >>100 いずれにしても、イベント内やDoeventsを使ったロジックを1ラインずつデバックしながら製造するのはやめた方がいいよ。 >102の言うようにトレースしたり、ウオッチ式でプロパティが変わった場所を突き止めるなりしてみたらいいと思う。 あと、単体テストはコンパイル後にEXEで実施しなきゃだめよ!
105 名前:デフォルトの名無しさん [2008/09/28(日) 10:40:35 ] IEを操作する場合なのですが スタート→処理A→処理B→処理C→処理D→終了 のような場合にA〜Dのところで稀にサイトのエラーページに飛ばされることがあります その時に自動でスタートに戻って再び最初から処理させたいのですが htmlのタイトル名、もしくはエラーページのテキストで判別することは可能でしょうか? 仮にタイトルは「エラー」、そのページに「エラーです」というテキストがあるとして これらがあった場合にスタートに戻る処理をさせたいのです 初歩的な質問ですみません
106 名前:デフォルトの名無しさん mailto:sage [2008/09/28(日) 13:36:43 ] >>105 そのロジックの実行は電子計算機損壊等業務妨害に抵触します。
107 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 11:23:51 ] GOTO
108 名前:デフォルトの名無しさん [2008/09/30(火) 15:43:00 ] 来年6月に出るWindows7ではVB6.0のプログラムは動かないそうですが どの開発環境に移行しますか?
109 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 16:06:14 ] >>108 動かないというソースは?
110 名前:デフォルトの名無しさん [2008/09/30(火) 17:11:39 ] VB6.0のメインストリームサポート(〜2005 /03/31)、延長サポート(〜2008/04/08)の 両方が終了した後に出るOSだから。
111 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 17:15:50 ] で、動かない、という、ソースは?
112 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 17:18:36 ] 7はvistaのsp2だよ
113 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 17:46:30 ] >>108 >来年6月に出る これのソースは?
114 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 18:01:58 ] スピリチュアル
115 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 18:17:24 ] >>108 つまり、末端の端末の標準OSが2000かXPになるわけだな。 それほど でかいプログラム扱う場所なんざVB使ってないだろうし。 新しいOS出る度にOS買い直すとか、最先端技術を駆使するなら使うだろうけど、 そうでないならば、ある種の金の無駄だからな。 (個人的には、今の所はwindows2000が入ってたマシンを フルチューンナップした方が使い良いと思う。スペック的にもコスト的にも。) VBは思い付きで(殆ど設計を書かずに)プログラムを書き始めても それなりに完成してしまうのが良い所だな。 .NETからその手軽さが少し薄れて個人的には残念な気分だが…。orz
116 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 19:16:16 ] 仮想PCなんてまさにVBの為にあるようなもの VB6は将来安泰ですよ
117 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 23:18:54 ] >>108 VB6でシェアウェア作って生計たててる俺涙目wwww VC++勉強しなきゃ・・・
118 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 00:02:54 ] .neetじゃだめなん?
119 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 00:08:36 ] 大体、いまどきVB6しかできませんって奴もいないだろ
120 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 14:58:33 ] >>119 ソースは?
121 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 15:10:53 ] ソースは今まで仕事してきた相手 だがCOBOLしかできない奴はいたな
122 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 15:26:55 ] つまらんソースを隠蔽したいんだろ
123 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 16:29:58 ] .netは逆コンパイルできるからダメか
124 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 16:31:38 ] >>121 それってたまたま言語がCOBOLだっただけで VB6もそれしか出来ない人くらい居るだろ…
125 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 19:40:47 ] ><ノ
126 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 01:31:43 ] >>108 絶対に動く。 動かなかったら100万円やるよ。
127 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 01:33:34 ] ソースは?
128 名前:デフォルトの名無しさん [2008/10/02(木) 02:20:21 ] ニート御用達言語VB6
129 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 18:54:20 ] まあ、VBが動かないのなら、WIN32アプリは、ほぼ全滅と考えたほうがいいな。
130 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 23:31:07 ] ↑なにこの時代錯誤
131 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 23:48:24 ] いまでも普通より延長してサポートしてる状態だから、 動かないというよりサポート対象から外れるということだろうね。 あとランタイムのOSへのバンドルもなくなるだろう。 それでもインストーラでランタイムを入れれば何とか動きはするだろうけど。
132 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 00:13:16 ] OfficeVBAが動くんだからVBも動くだろ。 みたいな。
133 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 00:36:20 ] 動くと思うけどね。 やっぱ互換がある程度保障されてないといくらMSでも買い控えられるのはVistaで分かったろう。 VB6なんて普及度高いんだし、フリーのツールも多いし。
134 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 00:46:48 ] MSとしてはサポートしたくないし忌まわしい記憶と共に消したいだろうけどな
135 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 18:42:28 ] 言語仕様はともかく、画面だけ必要なRAD用途だったらいいものだったからな>VB6 C#今やってるけどやっぱりC++にくらべてライブラリが少なすぎる…><
136 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 18:45:42 ] >>134 いや、誇らしい成果だろ、MS的には。
137 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 21:52:04 ] VBAのスレからこっちでしろといわれました クラスモジュールと 標準モジュールの違いがいまいちわからん クラスはオブジェクトとして使ったりコンパイルしてDLLとして参照すると 名前でプロシージャーを呼び出せるってことなのか? 標準だと他のモジュールのって呼び出せない?
138 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 22:11:27 ] クラスっぽいものを書くための場所がクラスモジュール ふつうのを書くための場所が標準モジュール
139 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 00:15:00 ] Newしなくても使えるのが標準モジュール
140 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 00:17:14 ] >>139 本気でそう理解してる人が多くて困るんだよなw
141 名前:デフォルトの名無しさん [2008/10/04(土) 11:39:14 ] VB6はすばらしいと思う。。趣味でやってる人ならポインタや構造体で挫折してもVB6ならその悩みは一蹴。 まさか参照とかでつまづく人はいないと思うけど。 やっぱ用途だよ。ゲームづくりだとVB6は物足りないけど、ツール製作ならNO.1だよ。
142 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 12:03:27 ] 意味不明な機能は使うなと言われて使用禁止されるのがクラスモジュール
143 名前:デフォルトの名無しさん [2008/10/04(土) 17:25:27 ] バカだな。 標準モジュールはクラスモジュールの意味が理解できないアホ専用モジュール。 99%の実装はフォームとクラスモジュールだけで作れるし、作るべきだ。 同じ機能を持つインスタンスを複数作れるということのメリットを理解しろ。 それにクラスモジュールだとC++などのオブジェクト指向言語への移植性が格段に良くなるから、 VB6がWindows7で動かないとしても、移植作業であまり困らない。
144 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 17:54:05 ] >>143 君VBでまとまった量のコード書いたことないでしょ?w
145 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 18:45:23 ] おれがみてきたほっとんどのプログラムは、クラスモジュール0、標準モジュール200 とかそんなんだ。