ファンクションキーを実装する機会があったので、ProcessCmdKeyをオーバーライド
して実装しようとしたけど、F10を拾わない。。。な~ぜ。
Protected Overrides Function ProcessCmdKey(ByRef msg As System.Windows.Forms.Message, ByVal keyData As System.Windows.Forms.Keys) As Boolean
Const WM_KEYDOWN As Integer = &H100
If (msg.Msg = WM_KEYDOWN) Then
If (keyData >= Keys.F1 And keyData <= Keys.F12) Then
'ここで対応する処理
Return True
End If
End If
Return MyBase.ProcessCmdKey(msg, keyData)
End Function
あっ、F10ってWindowsのショートカットキーか。。。ヽ(ー_ー )ノ
ということで、以下のように修正してめでたくF10を拾うことができた。
Protected Overrides Function ProcessCmdKey(ByRef msg As System.Windows.Forms.Message, ByVal keyData As System.Windows.Forms.Keys) As Boolean
Const WM_KEYDOWN As Integer = &H100
Const WM_SYSKEYDOWN As Integer = &H104
If ((msg.Msg = WM_KEYDOWN) Or (msg.Msg = WM_SYSKEYDOWN)) Then
If (keyData >= Keys.F1 And keyData <= Keys.F12) Then
'ここで対応する処理
Return True
End If
End If
Return MyBase.ProcessCmdKey(msg, keyData)
End Function
いまさら・・・のネタだよね・・・