函数功能:该函数在属于当前线程的指定窗口里设置鼠标捕获。一旦窗口捕获了鼠标,所有鼠标输入都针对该窗口,无论光标是否在窗口的边界内。同一时刻只能有一个窗口捕获鼠标。如果鼠标光标在另一个线程创建的窗口上,只有当鼠标键按下时系统才将鼠标输入指向指定的窗口。   函数原型:HWND SetCapture(HWND hwnd);   参数:   hWnd:当前线程里要捕获鼠标的窗口句柄。   返回值:返回值是上次捕获鼠标的窗口句柄。如果不存在那样的句柄,返回值是NULL。   备注:只有前台窗口才能捕获鼠标。如果一个后台窗口想捕获鼠标,则该窗口仅为其光标热点在该窗口可见部份的鼠标事件接收消息。另外,即使前台窗口已捕获了鼠标,用户也可点击另一个窗口,将其调入前台。当一个窗口不再需要所有的鼠标输入时,创建该窗口的线程应当调用函数ReleaseCapture来释放鼠标。此函数不能被用来捕获另一进程的鼠标输入。  鼠标事件: setCapture捕获以下鼠标事件:onmousedown、onmouseup、onmousemove、onclick、ondblclick、onmouseover和onmouseout。   程序中主要是要捕获onmousemove和onmouseup事件。   msdn的介绍中还说到setCapture有一个bool参数,用来设置在容器内的鼠标事件是否都被容器捕获。   容器就是指调用setCapture的对象,大概意思就是:   参数为true时(默认)容器会捕获容器内所有对象的鼠标事件,即容器内的对象不会触发鼠标事件(跟容器外的对象一样);   参数为false时容器不会捕获容器内对象的鼠标事件,即容器内的对象可以正常地触发事件和取消冒泡。

最新文章

  1. charing animation
  2. 搞懂 SynchronizationContext(第一部分)【翻译】
  3. 利用target的特性,可以实现纯css的tab效果切换
  4. java发展史与java的语言特性
  5. SpringMVC数据验证
  6. AnyChartStock去除水印方法
  7. ios开发之NavBar和TarBar使用技巧
  8. JAVAMAIL手动发送邮件
  9. std::numeric_limits<int>::max() error C2589: '(' : illegal token on right side of '::' 解决办法
  10. An error has occurred,See error log for more details
  11. webpack4 系列教程(十六):开发模式和生产模式·实战
  12. pickle详解
  13. idea本地运行JavaWeb项目
  14. json替换jsonp实现跨域请求
  15. 人机猜拳游戏Java
  16. mysql攻防之写入漏洞
  17. DOS下的安全空间
  18. Backlog和冲刺结果以及产品Demo市场调研
  19. linux用户权限 -> ACL访问控制
  20. [Sass] Level 3: Mixin -- Ex

热门文章

  1. async & await (转载)
  2. 怎么利用jquery.form 提交form
  3. 限制线程数 Limit the number of threads started by colly 随机延迟
  4. python cookbook第三版学习笔记七:python解析csv,json,xml文件
  5. 用keytool创建Keystore和Trustsotre文件只需五步
  6. linux下 python源码包解压报错
  7. iOS 使用GitHub托管代码
  8. 数据结构ADT是什么
  9. ping: sendto: Network is unreachable【转】
  10. 算法(Algorithms)第4版 练习 1.3.10