2014-12-03 136 views
-1

我一直在使用GetASyncKeyState &!GetASyncKeyState,但它没有反应良好,因为我要跟踪的密钥在释放之前暂时保持一段时间。KeyDown和KeyUp事件

我需要能够按住我的Mouse1按钮,然后释放按钮时触发一个事件。

+1

http://msdn.microsoft.com/en-us/library/windows/desktop/ms645533(v=vs.85).aspx – 2014-12-03 12:03:43

+0

@Silicomancer不,在(假想的)问题问的鼠标事件。 – 2014-12-03 12:12:38

+0

@πάνταῥεῖ:还有鼠标按钮的虚拟键代码。 – Silicomancer 2014-12-03 12:14:15

回答

1

解决了它,谢谢你试图帮助反正。

LRESULT CALLBACK MouseHookProc(int nCode, WPARAM wParam, LPARAM lParam) 
{ 

PKBDLLHOOKSTRUCT k = (PKBDLLHOOKSTRUCT)(lParam); 
POINT p; 

if (wParam == WM_LBUTTONUP) 
{ 
    _bAimed = false; 
} 
return CallNextHookEx(0, nCode, wParam, lParam); 
} 

//... 

MouseHook = SetWindowsHookEx(WH_MOUSE_LL, MouseHookProc, hInstance, 0); 

//... 

while (1) 
{ 
MSG msg; 
    if (PeekMessage(&msg, 0, 0, 0, PM_REMOVE)) { 
     TranslateMessage(&msg); 
     DispatchMessage(&msg); 
    } 
}