想判断鼠标的位置是否变化,之所以想这样,是做了了全局的鼠标钩子,但老是响应非本程序的鼠标消息,经测试过了。   想做个判断过滤掉虚拟鼠标消息,使用setcapture()上不是很了解,还请各位指点下
   谢谢!

解决方案 »

  1.   

    使用WH_MOUSE_LL这个钩子,在MouseMove中很容易判断鼠标是否移动
      

  2.   

    使用Thread而不是Global的钩子应该好些
      

  3.   

    GetCursorPosBOOL GetCursorPos(
      LPPOINT lpPoint   // cursor position
    );
      

  4.   

    我没用过setcapture(),但是你可以查看一下下面的3个函数,比较好用:  GetCursorPos     //得到鼠标的光标位置
      MouseMove        //在鼠标移动时就可触发的操作,可以添加个Handle来处理移动鼠标的消息
      SetWindowsHookEx //用来启动钩子,你可以设置它的参数为鼠标钩子的类型,
                            这个函数有个回调函数可以执行你想要的操作,你在这个函数里面可以做个消息的判断MouseMove,不知道你用了没有。
      

  5.   

    计时器中使用GetCursorPos函数就好了,不一定要用钩子