[名称] 添加系统热键

[名称]           添加系统热键

[语言种类]       Visual Basic

[类别一]         系统操控

[类别二]         VBAPI

[类别三]         底层开发

[数据来源]       shawls

[保存时间]       2002-08-19

[关键字一]       热键

[关键字二]       系统

[关键字三]       钩子

[内容简介]       空

[源代码内容]

Option Explicit

Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer
Private Declare Function SetWindowsHookEx Lib "user32" Alias "SetWindowsHookExA" (ByVal idHook As Long, ByVal ipfn As Long, ByVal hmod As Long, ByVal dwThreadId As Long) As Long
Private Declare Function UnhookWindowsHookEx Lib "user32" (ByVal hHook As Long) As Long
Private Declare Function CallNextHookEx Lib "user32" (ByVal hHook As Long, ByVal ncode As Long, ByVal wParam As Long, lParam As Any) As Long
Private Const WH_KEYBOARD = 2

Private hHook As Long
Private boolKeyUp As Boolean

Public Sub EnableHook()
hHook = SetWindowsHookEx(WH_KEYBOARD, AddressOf KeyFun, App.hInstance, 0)
End Sub

Public Sub DisableHook()
 UnhookWindowsHookEx (hHook)
End Sub

Function KeyFun(ByVal ncode As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
'If (GetKeyState(&H10) And &HF0000000) Then   'shift key
Select Case wParam
    Case vbKeyF
         If boolKeyUp = True Then
             boolKeyUp = False
             MsgBox "f"
         Else
             boolKeyUp = True
         End If
         KeyFun = 1
         Exit Function
    Case vbKeyG
         If boolKeyUp = True Then
             boolKeyUp = False
             MsgBox "g"
         Else
             boolKeyUp = True
         End If
         KeyFun = 1
         Exit Function
End Select
'End If
KeyFun = CallNextHookEx(hHook, ncode, wParam, lParam)
End Function

 

     以上代码保存于: SourceCode Explorer(源代码数据库)
           复制时间: 2002-08-20 17:20:58
           软件版本: 1.0.730
           软件作者: Shawls
           个人主页: Http://Shawls.Yeah.Net
             E-Mail: [email protected]
                 QQ: 9181729

你可能感兴趣的:([名称] 添加系统热键)