● 概要 ●
フォーム上で任意のコントロールにフォーカスがある状態でキーを押すと、通常はフォーカスのあるコントロールのキーボードイベントが発生します。
しかし、フォームの[キーボードイベント取得]プロパティを「はい」に設定すると、フォーカスのあるコントロールより先に、フォームがキーボードイベントを取得します。
そこで、フォームの[キークリック時]イベントプロシージャに、ファンクションキーに対応する処理を記述すると、フォーカスがどのコントロールにある場合でも、ファンクションキーを押すことで目的の処理を実行できます。
サンプルは、フォーム上の[cmdFilt]ボタンのクリック時イベントプロシージャと[F3]キー、[cmdShAll]ボタンのクリック時イベントプロシージャと[F4]キーを対応させています。
ボタンをクリックしてもファンクションキーを押しても同じ処理が行われます。
● サンプル ●
'フォームの[キーボードイベント取得]プロパティを「はい」に'設定してから実行
'フォームの[キークリック時]プロパティにイベントプロシージャを作成
'押されたキーに対応する処理を記述
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
'[F3]キーが押されたとき
Case vbKeyF3
'以下のプロシージャを呼び出す
Call cmdFilt_Click
'[F4]キーが押されたとき
Case vbKeyF4
'以下のプロシージャを呼び出す
Call cmdShAll_Click
End Select
End Sub