Form_KeyDownが反応しません・・・

解決


魚武  2006-12-15 22:40:13  No: 134609

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
On Error GoTo ErrorHandler
  Select Case KeyCode
    Case vbKeyF2
        If CmdPF2.Enabled Then Call CmdPF2_Click
    Case vbKeyF10
        If CmdPF10.Enabled Then Call cmdPF10_Click
    Case vbKeyF11
        If CmdPF11.Enabled Then Call CmdPF11_Click
    Case vbKeyF12
        If CmdPF12.Enabled Then Call CmdPF12_Click
  End Select
  Select Case KeyCode
    Case vbKeyF2, vbKeyF3, vbKeyF6, vbKeyF8, vbKeyF9, vbKeyF10, vbKeyF11, vbKeyF12
        KeyCode = 0
  End Select
Exit Sub
ErrorHandler:
    MsgBox "システムエラー" & vbCrLf & "Form_KeyDown" & vbCrLf & _
    Err.Source & " " & Err.Number & " " & Err.Description
End Sub

以上のプログラムを設定したのですが、プログラムを起動したときに指定のキーを押してもForm_KeyDown自体が反応しません。

上のプログラムに間違いがあるとしたらどこを修正すればよいのでしょうか?
もしプログラム上に間違いがなく、別の問題があるとしたらそれも教えて下さい。


matsu  2006-12-15 23:07:59  No: 134610

>上のプログラムに間違いがあるとしたらどこを修正すればよいのでしょうか?
>もしプログラム上に間違いがなく、別の問題があるとしたらそれも教えて下さい。

フォームのKeyPreviewプロパティがTrueになっているか確認してみては?


魚武  2006-12-15 23:10:17  No: 134611

>フォームのKeyPreviewプロパティがTrueになっているか確認してみては?

確認してみたらFalseになっていましたのでTrueに変更したら上手く認識しました。

ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加