はじめまして。
早速ですが、質問です。
本当はもっと複雑なソースなのですが、要点だけ抜粋します。
For a = 1 To 5
Image(a).Picture = LoadPicture("ファイル名")
Next a
このように変数を使って「Image1」〜「Image5」までの画像を表示させたいのですが、
何か良い方法はありますでしょうか。
http://madia.world.coocan.jp/cgi-bin/VBBBS2/wwwlng.cgi?print+200405/04050098.txt
検索してこの記事を読んでみたのですが、
理解不足なのか解決することができませんでした。
どなたかもう少し詳しく教えて頂けないでしょうか。
よろしくお願いします。
VB6なら、コントロール配列にした方が良いかも知れません。
それらのImageには、同じ名前(たとえば、Image1)をつけておき、
それぞれのIndexプロパティにだけ、異なる数字(0, 1, 2, ……)を入れます。
そうすると、
Dim a As Long
For a = 0 To 4
Set Image1(a).Picture = LoadPicture("ファイル名")
Next
もしくは、
Dim Img As Image
For Each Img In Image1
Set Img.Picture = LoadPicture("ファイル名")
Next
などのようにして処理できるようになります。
もし、コントロール配列にできない事情があるなら、
For a = 1 To 5
Controls("Image" & CStr(a)).Picture = LoadPicture("ファイル名")
Next
のような書き方も可能です。
魔界の仮面弁士さま
素早いご解答ありがとうございます。
二つ目の方法で無事解決することができました。
どうもありがとうございました。
ツイート | ![]() |