为什么我用Hook检索鼠标事件,不能检索到双击事件????

lg9wowo 2003-08-18 11:29:58
为什么我用Hook检索鼠标事件,不能检索到双击事件????
...全文
45 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
lg9wowo 2003-08-20
  • 打赏
  • 举报
回复
已经定义了WM_LBUTTONDBLCLK ,WM_RBUTTONDBLCLK


程序:
Private Const WM_MOUSEMOVE = &H200
Private Const WM_LBUTTONDOWN = &H201
Private Const WM_LBUTTONUP = &H202
Private Const WM_LBUTTONDBLCLK = &H203
Private Const WM_RBUTTONDOWN = &H204
Private Const WM_RBUTTONUP = &H205
Private Const WM_RBUTTONDBLCLK = &H206
Private Const WM_MBUTTONDOWN = &H207
Private Const WM_MBUTTONUP = &H208
Private Const WM_MBUTTONDBLCLK = &H209
Public Function CallHookProc(ByVal code As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Dim pt As POINTAPI

bflag = False
If code = HC_ACTION Then
CopyMemory msgs, lParam, LenB(msgs)
Select Case wParam
Case WM_MOUSEMOVE
pt.X = msgs.message
pt.Y = msgs.paramL
Case WM_LBUTTONDOWN
form1.text1 = "WM_LBUTTONDOWN"
Case WM_LBUTTONUP
form1.text1 = "WM_LBUTTONUP"
Case WM_LBUTTONDBLCLK '就是这个不触发
form1.text1 = "WM_LBUTTONDBLCLK"
Case WM_RBUTTONDOWN
form1.text1 = "WM_RBUTTONDOWN"
Case WM_MBUTTONDOWN
form1.text1 = "WM_MBUTTONDOWN"
End Select
End If

If code <> 0 Then
CallHookProc = CallNextHookEx(0, code, wParam, lParam)
End If

End Function
zyl910 2003-08-19
  • 打赏
  • 举报
回复
讲清楚点
是SubClass还是Hook
叶帆 2003-08-19
  • 打赏
  • 举报
回复
应该可以,如楼上所说,你看看你是否定义响应常量了。

否则,你有兴趣可以通过down、up事件和时间自己定义双击事件
evbsky 2003-08-19
  • 打赏
  • 举报
回复
没定义常量
Public Const WM_LBUTTONDBLCLK = &H203
Public Const WM_RBUTTONDBLCLK = &H206
lg9wowo 2003-08-18
  • 打赏
  • 举报
回复
但down跟up事件可以

1,486

社区成员

发帖
与我相关
我的任务
社区描述
VB API
社区管理员
  • API
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧