フォーム上にファンクションキー(PF-Keys)の機能を追加するには

フォーム上にファンクションキー(F2,F3,F4,F5,...)の機能を追加するためのテクニックを解説します。

  1. Access 97を起動して新規データベースを作成します。
  2. データベースウインドウが表示されたらフォームのタブをクリックして新規作成のボタンをクリックします。
  3. フォーム上にF2,F3,F4のコマンドボタンを作成します。

    Forms_Beginner_007_fig1
    図1-フォーム上に3個のコマンドボタンを作成した例

    各オブジェクトのプロパティは、以下のように設定します。

    Object Property Setting
    CommandButton1 Name cmdF2
    Caption F2
    CommandButton2 Name cmdF3
    Caption F3
    CommandButton3 Name cmdF4
    Caption F4
  4. フォームのKey PreviewプロパティをYesに設定します。コマンドボタンF2,F3,F4のOn ClickイベントおよびフォームのOn Key Downイベントに以下のVBAコードを追加します。

    リスト1-各種イベント処理用VBAコード
    Private Sub cmdF2_Click()
      MsgBox "Hello F2"
    End Sub
    
    Private Sub cmdF3_Click()
      MsgBox "Hello F3"
    End Sub
    
    Private Sub cmdF4_Click()
      MsgBox "Hello F4"
    End Sub
    
    Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
      Select Case KeyCode
        Case vbKeyF2: cmdF2_Click
        Case vbKeyF3: cmdF3_Click
        Case vbKeyF4: cmdF4_Click
        Case Else
      End Select
    End Sub
    
  5. フォームをビューモードに切り替えたら、ファンクションキー(F2,F3,F4)を押して該当するメッセージが表示されるか確認します。


Tip1:
PageUp, PageDownキーを無効にするにはフォームのKeyDownイベントを以下のように書き換えます。


Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
  If KeyCode = vbKeyPageDown Or KeyCode = vbKeyPageUp Then
     KeyCode = 0
  End If
End Sub
  


Tip2:
キーボードのコンスタントは、F2を押してオブジェクトブラウザを表示させてKeyCodeConstantsを選択すると一覧に表示されます。

Forms_Beginner_007_fig2
図2-オブジェクトブラウザを表示させてキーボードのコンスタントを表示させた例