Staticに一括表示

返信する


答えを正確に入力してください。答えられるかどうかでスパムボットか否かを判定します。

BBCode: ON
[img]: ON
[url]: ON
スマイリー: OFF

トピックのレビュー
   

展開ビュー トピックのレビュー: Staticに一括表示

by 刈谷 真 » 2007年10月03日(水) 20:22

ありがとうございます!

by NoWest » 2007年10月03日(水) 19:45

これでどうでしょうか?

コード: 全て選択

Dim i As Long
For i=0 To 10
    SetWindowText(GetDlgItem(hMainWnd,Static1+i),Str$(i))
Next
Static1~Static10は文字列ではなくConst命令で作成された定数なので
GetDlgItem()の第2パラメータにはStatic1などのIDをそのまま渡します。

上記のコードは、あくまでコントロールを作成した順がStatic1~Static10まで
連続に作成された場合にだけ使えるので、
コントロールが順番に連続に作成されていない場合、即ち
Static1→Button1→Static2→...
のように作成されている場合は、うまく動作するかは保障できませんので

少し面倒ですが下記のようにすると確実に動作すると思います。

コード: 全て選択

Dim i As Long, Static_ID[9] As Long

Static_ID[0]=Static1:Static_ID[1]=Static2
Static_ID[2]=Static3:Static_ID[3]=Static4
Static_ID[4]=Static5:Static_ID[5]=Static6
Static_ID[6]=Static7:Static_ID[7]=Static8
Static_ID[8]=Static9:Static_ID[9]=Static10

For i=0 To 9
    SetWindowText(GetDlgItem(hMainWnd,Static_ID),Str$(i+1))
Next

Staticに一括表示

by 刈谷 真 » 2007年10月03日(水) 18:14

お久しぶりです。

例えば、Static1~10くらいまでに1~10の数字を表示させていのですが、このコードではうまくいきません。
どのように改良すればいいのですか

ページトップ