VB.NETでファンクションキーに処理を割り当てるには?

解決


VB2年目の初心者  2003-10-17 14:51:45  No: 109221  IP: [192.*.*.*]

VB.NETのフォーム上にコントロールをいくつか配置して
実行する時のフォーカスに関係なくF1を押されたとき
に処理を実行する方法を教え下さい。

編集 削除
minami  2003-10-18 05:55:15  No: 109222  IP: [192.*.*.*]

フォームのKeyPreviewプロパティをTRUEにしておくと、
フォーカスを持っているコントロールの前にKeyPress,KeyDown,KeyUPのイベントを受け取ります。

編集 削除
VB2年目の初心者  2003-10-20 16:29:56  No: 109223  IP: [192.*.*.*]

ご返答ありがとうございます。
もう少し詳しく教えて下さい。

このような感じだと思うのですが、
xxxxxxxxxxxxxxxxxxxxxxx に何を入れたらいいのか分かりません、
どなたか教えて下さい。

Private Sub Form1_KeyPress(ByVal sender As Object, ByVal e As
       System.Windows.Forms.KeyPressEventArgs) Handles MyBase.KeyPress
    If e.KeyChar = xxxxxxxxxxxxxxxxxxxxxxx Then
        MessageBox.Show("F1押下")
    End If
End Sub

編集 削除
ねろ  2003-10-20 17:59:05  No: 109224  IP: [192.*.*.*]

>Private Sub Form1_KeyPress(ByVal sender As Object, ByVal e Form1_KeyPress
では無く
Private Sub Form1_KeyDown(ByVal sender As Object, ByVal
でしょう

それでもって   
>e.KeyChar
では無く
e.KeyCode()
でしょう

Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown
    Dim t As Object
    t = e.KeyCode()
    If t = 112 Then
        '何かする
    End If
End Sub


こんなことかな。

編集 削除
VB2年目の初心者  2003-10-21 10:16:22  No: 109225  IP: [192.*.*.*]

minamiさん、ねろさん
ありがとうございました。
無事解決することが出来ました。

編集 削除