zoukankan      html  css  js  c++  java
  • SetCapture ReleaseCapture

    函数功能:该函数在属于当前线程的指定窗体里设置鼠标捕获。一旦窗体捕获了鼠标,全部鼠标输入都针对该窗体,不管光标是否在窗体的边界内。同一时刻仅仅能有一个窗体捕获鼠标。假设鼠标光标在还有一个线程创建的窗体上,仅仅有当鼠标键按下时系统才将鼠标输入指向指定的窗体。

    1作用及參数编辑

    函数原型:HWND SetCapture(HWND hwnd)。
    參数:
    hWnd:当前线程里要捕获鼠标的窗体句柄

    返回值:返回值是上次捕获鼠标的窗体句柄

    假设不存在那样的句柄。返回值是NULL

    备注:仅仅有前台窗体才干捕获鼠标。

    假设一个后台窗体想捕获鼠标,则该窗体仅为其光标热点在该窗体可见部份的鼠标事件接收消息。另外,即使前台窗体已捕获了鼠标。用户也可点击还有一个窗体。将其调入前台。当一个窗体不再须要全部的鼠标输入时。创建该窗体的线程应当调用函数ReleaseCapture来释放鼠标。

    此函数不能被用来捕获还有一进程的鼠标输入。

    Windows 95:调用SetCapture会引起失去鼠标捕获的窗体接收一个WM_CAPTURECHANGED消息。
    速查:头文件:Winuser.h:输入库:user32.lib。

    Javascript鼠标捕获
    鼠标捕获(setCapture)作用是将鼠标事件捕获到当前文档的指定的对象。这个对象会为当前应用程序或整个系统接收全部鼠标事件。

    2鼠标事件编辑

    setCapture捕获下面鼠标事件:onmousedown、onmouseup、onclick、ondblclick、onmouseover和onmouseout。

    程序中主要是要捕获onmousemove和onmouseup事件。
    msdn的介绍中还说到setCapture有一个bool參数,用来设置在容器内的鼠标事件是否都被容器捕获。
    容器就是指调用setCapture的对象,大概意思就是:
    參数为true时(默认)容器会捕获容器内全部对象的鼠标事件,即容器内的对象不会触发鼠标事件(跟容器外的对象一样)。
    參数为false时容器不会捕获容器内对象的鼠标事件,即容器内的对象能够正常地触发事件和取消冒泡。

    ReleaseCapture
    编辑

    函数功能:该函数从当前线程中的窗体释放鼠标捕获,并恢复通常的鼠标输入处理。捕获鼠标的窗体接收全部的鼠标输入(不管光标的位置在哪里),除非点击鼠标键时,光标热点在还有一个线程的窗体中。
    函数原型:BOOL ReleaseCapture(VOlD)
    參数:无。
    返回值:假设函数调用成功,返回非零值。假设函数调用失败,返回值是零。若想获得很多其它的错误信息,请调用GetlastError函数。

    备注:应用程序在调用函数SetCaPture之后调用此函数。
    Windows 95:调用ReleaseCapture会引起失去鼠标捕获的窗体接收一个WM_CAPTURECHANGED消息。
    速查:Windows NT:3.1及以上版本号;Windows:95及以上版本号:Windows CE:1.0及以上版本号;头文件:winuser.h。输入库:User32.lib。

  • 相关阅读:
    左偏树
    论在Windows下远程连接Ubuntu
    ZOJ 3711 Give Me Your Hand
    SGU 495. Kids and Prizes
    POJ 2151 Check the difficulty of problems
    CodeForces 148D. Bag of mice
    HDU 3631 Shortest Path
    HDU 1869 六度分离
    HDU 2544 最短路
    HDU 3584 Cube
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/5177631.html
Copyright © 2011-2022 走看看