チェックボックスのイベント処理
広告
チェックボックスで用意されているイベントは以下の通りです。
イベント | 発生条件 |
---|---|
Click | マウスでクリック |
DblClick | マウスで2 回クリック |
Change | 値が変更される |
Enter | 別のコントロールからフォーカスを受け取る前 |
Exit | 別のコントロールにフォーカスを移す直前 |
MouseDown | マウスボタンを押す |
MouseUp | マウスボタンを離す |
MouseMove | マウスボタンを動かす |
KeyDown | キーを押す |
KeyUp | キーを離す |
KeyPress | キーを押す |
Error | コントロールでエラーが検出され、呼び出し元のプログラムにエラー情報を返せないとき |
BeforeDragOver | ドラッグ アンド ドロップ操作の実行 |
BeforeDropOrPaste | データをオブジェクトにドロップしようとするか、または貼り付けようとする |
BeforeUpdate | コントロールのデータを変更した時の変更される前 |
AfterUpdate | コントロールのデータを変更した後 |
例としてChangeイベントを試してみます。
フォームのコードウィンドウを開いて次のように入力します。
Private Sub check1_Change() If check1.Value = True Then check2.Enabled = True Else check2.Enabled = False End If End Sub
チェックボックス1がチェックされた時だけチェックボックス2が有効となるようにします。
呼びだすマクロは次の通りです。
Sub テスト() Load sampleForm sampleForm.check1.Caption = "20歳以上" sampleForm.check1.Value = False sampleForm.check2.Caption = "既婚" sampleForm.check2.Value = False sampleForm.check2.Enabled = False sampleForm.Show End Sub
ではマクロを実行します。
チェックボックス1をチェックした時だけチェックボックス2が有効になります。
( Written by Tatsuo Ikura )