お世話になります。
過去ログもかなりの数を目を通したのですが私の質問に合致するものがなかったので新規でお願いします。
VB6にてテキストボックスを100個作って順番に1〜100までの数字を代入していこうと思えばFor文でまわして
TextBox(i).Text=i
とやれば無駄なく入ったのですが2005ではコントロール配列そのものが廃止されている模様。。。
同じようなことを実現する方法をご存知の方がいらっしゃったらよろしくお願いいたします。
すみません。解決しました。
あとでその方法を書いておきますがとりあえず急ぎなのでご報告まで。。。
以下VB2005 ExpressEditionでの検証です。
上記にも書いたとおりtextbox100個に対して順番に1〜100の数字を入れるのであれば
for i=1 to 100
me.controls(i).text=i
next i
でいけます。
ただしこれだとフォームにテキストボックス以外のものがあるときにはそれにも上記番号が振られることになるので実際はコントロールがテキストボックスかをGetTypeで判別して使用しました。
他にもGroupBoxなどを使う方法があるみたいですね。
どうもお騒がせいたしました。
解決チェックのし忘れ・・・。
いったい一人でどんだけ書き込めばすむのか(笑)
自分でコントロールの配列を用意して、必要な参照のみを格納しておくとか、
更に進んで、コントロール自体動的に作成して、イベントハンドラに結びつけるとか。。。
この手の手法はTipsとして公開しているサイトも多いですよ?
このサイトでは初心者掲示板のほうで『コントロールの配列』をキーワード
検索してみるとか。
http://madia.world.coocan.jp/cgi-bin/VBBBS2/wwwlng.cgi?print+200412/04120067.txt
http://madia.world.coocan.jp/cgi-bin/VBBBS2/wwwlng.cgi?print+200704/07040067.txt
ツイート | ![]() |