【笨嘴拙舌WINDOWS】SetCapture和ReleaseCapture

光电鼠标器是通过红外线或激光检测鼠标器的位移,将位移信号转换为电脉冲信号,再通过程序的处理和转换来控制屏幕上的光标箭头的移动的一种硬件设备。

换句话说,鼠标无时无刻不在监视着人类的活动,当人类用意识去控制鼠标移动时,鼠标就会捕获到人的某种操作(移动鼠标,按键等),捕获之后,立即将消息发送给操作系统,操作系统通过消息分析出鼠标的位置,查找该位置下对应的窗口,然后将消息翻译成windows能理解的消息转发给窗口对应的应用程序!

在默认情况下,windows查找的是鼠标光标下的窗口;但是如果程序调用了SetCapture(hwnd),windows将不查找窗口,而是直接将消息转发给hwnd对应的窗口。当程序ReleaseCapture之后,windows就会经行查找

通常SetCapture是mousedown里使用

在mousemove里面处理逻辑

在mouseup里面调用ReleaseCapture

原文地址:https://www.cnblogs.com/pavkoo/p/3334644.html