[Win32]若鼠标不在本窗口之下,如何才能检测到鼠标弹起的事件

[Win32]若鼠标不在本窗口之上,怎么才能检测到鼠标弹起的事件?
本帖最后由 weiwuyuan 于 2012-12-10 13:28:37 编辑 如果鼠标不在本窗口之上,弹起消息将接收不到,(本窗口是焦点窗口)
有什么方法能接收到??
------最佳解决方案--------------------
引用:
当窗口焦点消失的时候,需要ReleaseCapture()

就算是,这又有什么影响?
不过,我是这样用的:
按下鼠标时:SetCapture
鼠标弹起时:ReleaseCapture
------其他解决方案--------------------
试试这组API:
SetCapture
ReleaseCapture
类型于mspaint画图程序,鼠标离开画板,再回来还是可以画。
------其他解决方案--------------------
引用:
试试这组API:
SetCapture
ReleaseCapture
类型于mspaint画图程序,鼠标离开画板,再回来还是可以画。


这函数不好用,还用不停的ReleaseCapture
------其他解决方案--------------------
做个Dll,放个系统钩子进去,就可以全局监控鼠标键盘
------其他解决方案--------------------
引用:
做个Dll,放个系统钩子进去,就可以全局监控鼠标键盘


这更复杂,有高射炮打蚊子的感觉。

我觉得这个需求,可能就是一个api函数的事情. 两三行代码就应该能解决掉
------其他解决方案--------------------
引用:
引用:试试这组API:
SetCapture
ReleaseCapture
类型于mspaint画图程序,鼠标离开画板,再回来还是可以画。

这函数不好用,还用不停的ReleaseCapture

哪里不好用了?
------其他解决方案--------------------
引用:
引用:
引用:试试这组API:
SetCapture
ReleaseCapture
类型于mspaint画图程序,鼠标离开画板,再回来还是可以画。

这函数不好用,还用不停的ReleaseCapture
哪里不好用了?


我查了一下,当窗口消息的时候,需要ReleaseCapture()
------其他解决方案--------------------
当窗口焦点消失的时候,需要ReleaseCapture() 
------其他解决方案--------------------
SetWindowsHookEx(WH_MOUSE_LL, ...);
------其他解决方案--------------------
挂钩子来捕捉鼠标弹起的事件.