我試圖讓鼠標雙擊與pyHook,但相反,我得到兩個單擊一對單擊例如WM_LBUTTONDOWN(0x201)和WM_LBUTTONUP(0x202)。我期待WM_LBUTTONDBLCLK(0x203)。我在這裏誤解了什麼?獲取鼠標雙擊pyHook
import pythoncom, pyHook
def OnMouseEvent(event):
print event.Message, event.Position
return True
hm = pyHook.HookManager()
hm.MouseAll = OnMouseEvent
hm.HookMouse()
pythoncom.PumpMessages()
我發現這個提示:在this post MrZebra說:「對於這個(0x203)發送,你的窗口類需要的CS_DBLCLKS類樣式創建」
編輯:This page表示雙擊將生成這4個消息:WM_LBUTTONDOWN,WM_LBUTTONUP,WM_LBUTTONDBLCLK和WM_LBUTTONUP,但實際上我得到了前兩次兩次。
我使用Python 2.7和pyHook 1.5.1 Win7x64
重新編輯:我會考慮的答案C++/C#鍵盤/鼠標掛鉤的替代品。另一方面,我不確定構建函數來確定評估兩次點擊之間的時間的雙擊事件是否是常見做法。
嘗試在`hm = pyHook.HookManager()`語句之後添加`hm.SubscribeMouseAllButtonsDbl(OnMouseEvent)`。 – martineau 2010-12-08 23:45:57
我做了更改,但雙擊不會顯示。我提出了很多建議。 – 2010-12-09 02:14:08