回答が表示されていましたが、これはかなり古いですが、これを試してみてください。ホットキーは、示されているようにalt + dまたはalt + cに設定されています。彼らがあなたに与えているものと私があなたに与えているものの間のこのコードの違いは、アプリケーションが最小限に抑えられているときでさえ、これが機能するということです。ここで
Public Const MOD_ALT As Integer = &H1 'Alt key
Public Const WM_HOTKEY As Integer = &H312 '
<DllImport("User32.dll")> _
Public Shared Function RegisterHotKey(ByVal hwnd As IntPtr, ByVal id As Integer, ByVal fsModifiers As Integer, ByVal vk As Integer) As Integer
End Function
<DllImport("User32.dll")> _
Public Shared Function UnregisterHotKey(ByVal hwnd As IntPtr, ByVal id As Integer) As Integer
End Function
Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message)
If m.Msg = WM_HOTKEY Then
Dim id As IntPtr = m.WParam
Select Case (id.ToString)
Case "100"
MessageBox.Show("You pressed ALT+D key combination")
Case "200"
MessageBox.Show("You pressed ALT+C key combination")
End Select
End If
MyBase.WndProc(m)
End Sub
Private Sub Form1_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing
UnregisterHotKey(Me.Handle, 100)
UnregisterHotKey(Me.Handle, 200)
End Sub
Private Sub Form_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
RegisterHotKey(Me.Handle, 100, MOD_ALT, Keys.D)
RegisterHotKey(Me.Handle, 200, MOD_ALT, Keys.C)
end sub
あなたの名前はひどいです。どのように誰がフォーム#6のボタン#4が何をしているのか知っていますか? –
'F1'はWindowsのヘルプとして予約されています。 'Ctrl + C 'は通常'クリップボードのコピー'のために使われます。これらの特定の重要な選択肢は、おそらく悪い考えです。 –
私は 'O'や 'F4'のような他のキーも試しましたが、これもうまくいきません...Form6は顧客を表示するフォームであり、button4 clickイベントには顧客リストを印刷するコードが含まれています – user944591