关于SetCapture() 和 ReleaseCapture()的用法

一般,只有鼠标在CWnd的客户区内,你才能接受到鼠标消息。调用SetCapture后,即使鼠标移动出客户区,你也可以

接受到鼠标消息。不过系统中只能有一个程序调用SetCapture,所以你需要在不使用时调用ReleaseCapture释放。而

GetCapture可以知道当前哪个窗口调用了SetCapture。

用来捕获鼠标消息,只有鼠标在CWnd的客户区内,你才能接受到鼠标消息.

比如说你做一个画图的程序当鼠标移出客户就不能再画了当你鼠标移回客户
区时它会从你移动进来的地方再开始画,
用了这个函数可以避免移进来时从你移出的地方开始接着画.

我觉得鼠标的Capture主要是让你能够捕获鼠标在别的地方的
松开的消息

setcapture()是将所有的鼠标输入消息全部发送给当前窗口,而不论鼠标是否在当前窗口内。以滚动条为例,当你在

滚动条中间的滑块上按下鼠标左键并拖动时,即使你的鼠标已经在滑块之外,但滑块依然能滑动。着就是

setcapture()起到的作用。

猜你喜欢

转载自blog.csdn.net/weixin_44232533/article/details/85708049
今日推荐