使用API函数mouse_event可以模拟鼠标事件

使用API函数mouse_event可以模拟鼠标事件

ID:37766762

大小:20.88 KB

页数:7页

时间:2019-05-30

使用API函数mouse_event可以模拟鼠标事件_第1页
使用API函数mouse_event可以模拟鼠标事件_第2页
使用API函数mouse_event可以模拟鼠标事件_第3页
使用API函数mouse_event可以模拟鼠标事件_第4页
使用API函数mouse_event可以模拟鼠标事件_第5页
资源描述:

《使用API函数mouse_event可以模拟鼠标事件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、使用API函数mouse_event可以模拟鼠标事件,比如左键单击、双击和右键单击等。这个实例利用此函数产生了十分有趣的效果,无论鼠标处于屏幕的任何位置,每隔一秒程序会使鼠标在那个位置单击或双击一次,这会给我们造成什么样的混乱呢?试一试就知道了。先在程序中加入如下的声明后,就能引用mouse_event函数:PrivateDeclareSubmouse_eventLib"user32"(ByValdwFlagsAsLong,ByValdxAsLong,ByValdyAsLong,ByValcButtonsAsLong,ByVal

2、dwExtraInfoAsLong)其中各个参数的意义如下表所示:参数意义dwFlagsLong,下表中标志之一或它们的组合dx,dyLong,根据MOUSEEVENTF_ABSOLUTE标志,指定x,y方向的绝对位置或相对位置cButtonsLong,没有使用dwExtraInfoLong,没有使用dwFlags常数意义MOUSEEVENTF_MOVE&H1,移动鼠标MOUSEEVENTF_LEFTDOWN&H2,模拟鼠标左键按下MOUSEEVENTF_LEFTUP&H4,模拟鼠标左键抬起MOUSEEVENTF_RIGHTDO

3、WN&H8,模拟鼠标右键按下MOUSEEVENTF_RIGHTUP&H10,模拟鼠标右键抬起MOUSEEVENTF_MIDDLEDOWN&H20,模拟鼠标中键按下MOUSEEVENTF_MIDDLEUP&H40,模拟鼠标中键抬起MOUSEEVENTF_ABSOLUTE&H8000,标示是否采用绝对坐标程序中我们这样使用mouse_event函数:1、这里是鼠标左键按下和松开两个事件的组合即一次单击:mouse_eventMOUSEEVENTF_LEFTDOWNOrMOUSEEVENTF_LEFTUP,0,0,0,02、模拟鼠标右

4、键单击事件:mouse_eventMOUSEEVENTF_RIGHTDOWNOrMOUSEEVENTF_RIGHTUP,0,0,0,03、两次连续的鼠标左键单击事件构成一次鼠标双击事件:mouse_eventMOUSEEVENTF_LEFTDOWNOrMOUSEEVENTF_LEFTUP,0,0,0,0mouse_eventMOUSEEVENTF_LEFTDOWNOrMOUSEEVENTF_LEFTUP,0,0,0,0如上面所示如果我们要使用两个dwFlags常数的组合时,可以用Or将其连接起来。本例中我们把dx,dy参数都设为

5、0,是指每次模拟事件的位置是鼠标的当前位置,dx,dy在没有使用MOUSEEVENTF_ABSOLUTE标志时是相对于鼠标当前位置的坐标,如果设置为使用绝对坐标,则dx,dy是相对于屏幕的坐标。然后把这些语句放在Timer控件的Timer事件中,就能实现每一定间隔模拟一次鼠标事件了。模拟鼠标点击2011-09-1219:26:39

6、分类:★window编程

7、标签:

8、字号大中小订阅MFC工程把以下代码放到你想要响应的函数里面就行CPointpt;

9、GetCursorPos(&pt);//获取鼠标在屏幕的当前位置SetCursorPos(100,200);//移动到某点坐标mouse_event(MOUSEEVENTF_RIGHTDOWN,0,0,0,0);//点下右键mouse_event(MOUSEEVENTF_RIGHTUP,0,0,0,0);//松开右键mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);//点下左键mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);//松开左键BOOLSetCursorP

10、os(  intX,//horizontalposition  intY//verticalposition  );  设置鼠标位置。鼠标指针在屏幕像素坐标系统中的X,Y位置  这个函数是用来设置Mouse位置的。可以用这个函数来移动mouse在屏幕上的移动。  另外一个函数功能比较强,即mouse_event()VOIDmouse_event(  DWORDdwFlags,  DWORDdx,  DWORDdy,  DWORDdwData,  DWORDdwExtraInfo  );    设置mouse状态。参数说明如下: 

11、 dwFlagsLong,下述标志的一个组合:  MOUSEEVENTF_ABSOLUTEdx和dy指定鼠标坐标系统中的一个绝对位置。在鼠标坐标系统中,屏幕在水平和垂直方向上均匀分割成65535×65535个单元  MOUSEEVENTF_MOVE移动鼠标  M

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。