投稿日 | : 2004/02/06(Fri) 16:08 |
投稿者 | : 隼人 |
Eメール | : |
URL | : |
タイトル | : Re^6: コンボボックスのイベント |
# うぉぉっ、やっぱりハマってる (ToT)
下のような感じではどうでしょう...
Private Sub Combo1_Click(Index As Integer)
Static flg As Boolean
Dim sTemp As String
Select Case Index
Case 0
Combo1(1).Clear
Combo1(1).AddItem "ALL"
Select Case Combo1(0).Text
Case "野球"
Combo1(1).AddItem "バット"
Combo1(1).AddItem "ボール"
Case "水泳"
Combo1(1).AddItem "水着"
Combo1(1).AddItem "ゴーグル"
End Select
Case 1
If flg = True Then Exit Sub '* flg = True の時は、イベントを無視
sTemp = Combo1(1).Text '* 後で、選択項目を戻す為、変数に退避
Select Case sTemp
Case "バット", "ボール"
Combo1(0).Text = "野球" '* Combo1_Click(0) イベントを発生させる
' Combo1(1).Text は未選択の状態になる
Case "水着", "ゴーグル"
Combo1(0).Text = "水泳" '* Combo1_Click(0) イベントを発生させる
' Combo1(1).Text は未選択の状態になる
End Select
flg = True '* 以下で Combo1(1).Text を変更した時に発生する Combo1_Click(1)
' ' イベントを無視する為、 flg = True に設定
Combo1(1).Text = sTemp '* 上記で未選択の状態になって
' しまった Combo1(1).Text を再度選択状態にする。
flg = False '* flg を元に戻す
End Select
End Sub