SetCapture和ReleaseCapture

SetCapture和ReleaseCapture函数功能:该函数在属于当前线程的指定窗口里设置鼠标捕获。一旦窗口捕获了鼠标,所有鼠标输入都针对该窗口,无论光标是否在窗口的边界内。同一时刻只能有一个窗口捕获鼠标。如果鼠标光标在另一个线程创建的窗口上,只有当鼠标键按下时系统才将鼠标输入指向指定的窗口。  函数原型:HWNDSetCapture(HWNDhwnd);  参数:  hWnd:当前线程里要捕获鼠标的

大家好,又见面了,我是你们的朋友全栈君。

函数功能:该函数在属于当前线程的指定窗口里设置鼠标捕获。一旦窗口捕获了鼠标,所有鼠标输入都针对该窗口,无论光标是否在窗口的边界内。同一时刻只能有一个窗口捕获鼠标。如果鼠标光标在另一个线程创建的窗口上,只有当鼠标键按下时系统才将鼠标输入指向指定的窗口。

    函数原型:HWND SetCapture(HWND hwnd);

    参数:

    hWnd:当前线程里要捕获鼠标的窗口句柄。

    返回值:返回值是上次捕获鼠标的窗口句柄。如果不存在那样的句柄,返回值是NULL。

    备注:只有前台窗口才能捕获鼠标。如果一个后台窗口想捕获鼠标,则该窗口仅为其光标热点在该窗口可见部份的鼠标事件接收消息。另外,即使前台窗口已捕获了 鼠标,用户也可点击该窗口,将其调入前台。当一个窗日不再需要所有的鼠标输入时,创建该窗口的线程应当调用函数ReleaseCapture来释放鼠标。 此函数不能被用来捕获另一进程的鼠标输入。

 
ReleaseCapture

函数功能:该函数从当前线程中的窗口释放鼠标捕获,并恢复通常的鼠标输入处理。捕获鼠标的窗口接收所有的鼠标输入(无论光标的位置在哪里),除非点击鼠标键时,光标热点在另一个线程的窗口中。

    函数原型:BOOL ReleaseCapture(VOlD)

    参数:无。

    返回值:如果函数调用成功,返回非零值;如果函数调用失败,返回值是零。若想获得更多的错误信息,请调用GetlastError函数。

    备注:应用程序在调用函数SetCaPture之后调用此函数。

    Windows 95:调用ReleaseCapture会引起失去鼠标捕获的窗日接收一个WM_CAPTURECHANGED消息。

摘自:http://blog.csdn.net/lcwdzl/archive/2009/04/03/4045550.aspx

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/134857.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • cubieboard使用资料

    cubieboard使用资料cubieboard 制作可以启动的sdhttps://github.com/shmily/CubieboardcubieboardFEDORA镜像:http://zenit.senecac.on.ca/wiki/index.php/Fedora_ARM_Secondary_ArchitectureSUNXI官方网站:http://linux-sunx

    2022年7月22日
    7
  • linux连接蓝牙键盘_双系统蓝牙键盘切换

    linux连接蓝牙键盘_双系统蓝牙键盘切换后记:写完这篇文章后又先后重新连接过两次,每次都会下意识担心,完了完了这次可能再也连不上了(想起当初一直连不上双系统,被蓝牙键盘支配的日日夜夜),结果我按着自己写的这篇文章来搞,还不是每次都成功了hh.一、参考文献为了方便查阅,先列出参考文献。这些文章中有的内容已经过时,有的是配置的环境不一样。1.Ubuntu和Windows双系统蓝牙键盘配对——20142.Ubunt…

    2022年10月15日
    0
  • js排序——sort()排序用法

    js排序——sort()排序用法sort()方法用于对数组的元素进行排序,并返回数组。默认排序顺序是根据字符串Unicode码点。语法:array.sort(fun);参数fun可选。规定排序顺序。必须是函数。注:如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。如果想按照其他规则进行排序,就需要提供比较函数,该函数要比较两个值,然后返回…

    2022年10月20日
    0
  • eclipse中导入maven工程「建议收藏」

    eclipse中导入maven工程「建议收藏」1.导入工程Maven->ExistingMavenProjects,选择项目路径,点击Next2.点击Finish选择需要导入的maven项目,点击Finish

    2022年5月6日
    46
  • 1215 – Cannot add foreign key constraint

    1215 – Cannot add foreign key constraint1215 – Cannot add foreign key constraint

    2022年4月25日
    57
  • 什么是粘包?_网络粘包

    什么是粘包?_网络粘包TCP/IP协议簇建立了互联网中通信协议的概念模型,该协议簇中的两个主要协议就是TCP和IP协议。TCP/IP协议簇中的TCP协议能够保证数据段(Segment)的可靠性和顺序,有了可靠的传输层协议之后,应用层协议就可以直接使用TCP协议传输数据,不在需要关心数据段的丢失和重复问题。图1-TCP协议与应用层协议IP协议解决了数据包(Packet)的路由和传输,上层的TCP协议不再关注路由和寻址,那么TCP协议解决的是传输的可靠性和顺序问题,上层不需要.

    2022年8月11日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号