hi,
here is an answer :
Public Class Form1
' If you just want the hot key, with no modifier
' use zero for the fsModifiers value (But this is a BAD IDEA).
Private Const NoModKey As Integer = 0
' Modifier key constants
Private Const MOD_ALT As Integer = 1
Private Const MOD_CONTROL As Integer = 2
Private Const MOD_SHIFT As Integer = 4
Private Const MOD_WIN As Integer = 8
' Value indicating Windows Message is a hot key.
Protected Friend Const WM_HOTKEY As Integer = 786
' Unique ID for the atomic hot key.
Protected Friend hotkeyID As Short
' Register hotkey
Protected Friend Declare Function RegisterHotKey Lib "user32" (ByVal
hwnd As IntPtr, ByVal id As Integer, ByVal fsModifiers As Integer, ByVal vk
As Keys) As Integer
' Add global name for hotkey
Protected Friend Declare Function GlobalAddAtomA Lib "kernel32" (ByVal
lpString As String) As Short
' Delete hotkey atom.
Protected Friend Declare Function GlobalDeleteAtom Lib "kernel32"(ByVal
nAtom As Integer) As Short
' Unregister hotkey.
Protected Friend Declare Function UnregisterHotKey Lib "user32" (ByVal
hwnd As IntPtr, ByVal id As Integer) As Integer
Private Sub hotkey_Load()
' GlobalAddAtom adds the String to the System global
' atom table, and returns a unique number to identify
' it the atom table.
hotkeyID = GlobalAddAtomA("GlobalHotKeyFor_MyUniqueAppName")
If hotkeyID = 0 Then
MessageBox.Show("Unable to generate the requestedhotkey unique
ID.", "Error Making Hotkey ID")
Else
' Register the hot key combo used to show the form.
' I used Alt key modifier and the F1 key, Alt + F1,
' but you can use any key combo.
If RegisterHotKey(Me.Handle, hotkeyID, MOD_ALT, Keys.Delete) = 0
Then
MessageBox.Show("Unable to register the requested hotkey.",
"Error Registering Hotkey")
Else
'mettre la ligne suivante en commentaire pour la production
MessageBox.Show("The following Hotkey wasregistered for
this application: " & "Keys: Alt + F1", "Hot Key Registered")
End If
End If
End Sub
Private Sub Form1_Closing(ByVal sender As Object, ByVal e As
System.ComponentModel.CancelEventArgs) Handles MyBase.Closing
' READ ME:
' You MUST unregister your Hot Key, or your application will leak
memory.
If Me.hotkeyID <> 0 Then
UnregisterHotKey(Me.Handle, hotkeyID)
' Also delete the hot key atom.
GlobalDeleteAtom(hotkeyID)
End If
End Sub
Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message)
' Check for our Windows Message Hotkey.
If m.Msg = WM_HOTKEY Then
' Do something.
End If
' Return key messages to the application.
MyBase.WndProc(m)
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
hotkey_Load()
End Sub
End Class
-Ipakita ang tekstong may panipi-