b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

C#模拟鼠标移动,然后单击

电脑杂谈  发布时间:2020-11-22 11:00:46  来源:网络整理

winform 模拟鼠标点击_winform 模拟鼠标点击

我们需要使用的mouse_event函数位于user32.dll库文件中,因此我们需要首先声明引用。

[System.Runtime.InteropServices.DllImport("user32")] 
private static extern int mouse_event(int dwFlags, int dx, int dy, int cButtons, int dwExtraInfo); 
//移动鼠标 
const int MOUSEEVENTF_MOVE = 0x0001;      
//模拟鼠标左键按下 
const int MOUSEEVENTF_LEFTDOWN = 0x0002; 
//模拟鼠标左键抬起 
const int MOUSEEVENTF_LEFTUP = 0x0004; 
//模拟鼠标右键按下 
const int MOUSEEVENTF_RIGHTDOWN = 0x0008; 
//模拟鼠标右键抬起 
const int MOUSEEVENTF_RIGHTUP = 0x0010; 
//模拟鼠标中键按下 
const int MOUSEEVENTF_MIDDLEDOWN = 0x0020; 
//模拟鼠标中键抬起 
const int MOUSEEVENTF_MIDDLEUP = 0x0040; 
//标示是否采用绝对坐标 
const int MOUSEEVENTF_ABSOLUTE = 0x8000; 

dwFlags:标志位设置,它指定按钮单击和鼠标操作的各种情况。此参数中的位可以是以下值的任何合理组合:

winform 模拟鼠标点击_winform 模拟鼠标点击

dx:指定鼠标沿x轴的绝对位置或自上一次鼠标事件发生以来的移动量,具体取决于MOUSEEVENTF_ABSOLUTE的设置。给出的绝对数据是鼠标的实际X坐标;给出的相对数据是移动的米键数。米奇代表鼠标的移动量,表示鼠标已移动。

dy:指定鼠标沿y轴的绝对位置或自上一次鼠标事件发生以来的移动量,具体取决于MOUSEEVENTF_ABSOLUTE的设置。给出的绝对数据是鼠标的实际y坐标,给出的相对数据是移动的米键数。

dwData:如果dwFlags为MOUSEEVENTF_WHEEL,则dwData指定鼠标滚轮的移动量。正值表示鼠标滚轮向前转动,即远离用户。负值表示鼠标滚轮向后(即朝向用户)转动。一轮命中定义为WHEEL_DELTA,即120。

winform 模拟鼠标点击_winform 模拟鼠标点击

如果dwFlagsS不是MOUSEEVENTF_WHEEL,则dWData应该为零。

dwExtralnfo:指定与鼠标事件相关的其他32位值。该应用程序调用函数GetMessageExtraInfo以获得此附加信息。

返回值:无。

winform 模拟鼠标点击_winform 模拟鼠标点击

在程序中,我们可以直接调用mouse_event函数mouse_event(MOUSEEVENTF_ABSOLUTE | MOUSEEVENTF_MOVE,500,500,0,0);

1、这是按下和释放鼠标左键的两个事件的组合,即单击一次:mouse_event(MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP,0,0,0,0)

2、模拟鼠标右键单击事件:mouse_event(MOUSEEVENTF_RIGHTDOWN | MOUSEEVENTF_RIGHTUP,0,0,0,0)

3、两个连续的鼠标左键单击事件构成鼠标双击事件:mouse_event(MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP,0,0,0,0)mouse_event(MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP,0,0,0,0)

4、使用绝对坐标MOUSEEVENTF_ABSOLUTE | MOUSEEVENTF_MOVE,500、500、0、0

应注意,如果不使用MOUSEEVENTF_ABSOLUTE,则该功能默认为相对于鼠标当前位置的点。如果dx和dy用0、0表示,则此函数考虑当前鼠标所在的点。5、直接设置绝对坐标,然后单击mouse_event(MOUSEEVENTF_LEFTDOWN,X * 65536/1024,Y * 65536/768,0,0); mouse_event(MOUSEEVENTF_LEFTUP,X * 65536/1024,Y * 65536/768,0, 0);其中X和Y是您要单击的点的横坐标和纵坐标。

Keybd_event()用于键盘仿真

Keybd_event可以触发一个按键事件,即,将生成WM_KEYDOWN或WM_KEYUP消息。当然,这两个消息也可以用于模拟按键,但是直接使用此功能并不方便。 Keybd_event具有四个参数,第一个是键的虚拟键值,例如Enter键是vk_return,而tab键是vk_tab。第二个参数是扫描代码。通常,无需设置它,只需使用0即可。第三个参数是选项标志。如果为keydown,则将其设置为0。如果为keyup,则将其设置为“ KEYEVENTF_KEYUP”。第四个参数通常设置为0。使用以下代码模拟按下i键,其中49代表i键的虚拟键值:


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/bofangqi/article-335133-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...