VB点虐 模拟两个鼠标 vb模拟鼠标点击

如何在VB点虐 中用程序控制鼠标移动和点击

调用api

成都创新互联公司从2013年开始,先为建始等服务建站,建始等地企业,进行企业商务咨询服务。为建始企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

在Visual Baisc点虐 中的声明:

Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)

Public Const MOUSEEVENTF_LEFTDOWN = H2 '模拟鼠标左键按下

Public Const MOUSEEVENTF_LEFTUP = H4 ’模拟鼠标左键释放

Public Const MOUSEEVENTF_MIDDLEDOWN = H20 '模拟鼠标中间键按下

Public Const MOUSEEVENTF_MIDDLEUP = H40 '模拟鼠标中间键释放

Public Const MOUSEEVENTF_RIGHTDOWN = H8 '模拟鼠标右键按下

Public Const MOUSEEVENTF_RIGHTUP = H10 '模拟鼠标右键释放

Public Const MOUSEEVENTF_MOVE = H1 '模拟鼠标指针移动

例:

mouse_event MOUSEEVENTF_LEFTDOWN,10,10,0,0

'在(10,10)模拟鼠标左键按下

VB.NET模拟鼠标问题

Declare Sub mouse_event Lib "user32" Alias "mouse_event" (ByVal dwFlags As Integer, ByVal dx As Integer, ByVal dy As Integer, ByVal cButtons As Integer, ByVal dwExtraInfo As Integer)

Dim postion1 As New Point

mouse_event(H1 Or H8000, postion1.X * 65535 / 1366, postion1.Y * 65535 / 768, 0, 0)

'按绝对位置移动鼠标

'在鼠标坐标系统中,屏幕在水平和垂直方向上均匀分割成65535×65535个单元,

'当前所用显示屏分辨率为1366*768

'所以要进行如上转换

mouse_event(H2, 0, 0, 0, 0) '鼠标左键按下

mouse_event(H4, 0, 0, 0, 0) '鼠标左键弹起

msdn上有 mouse_event 的详解,大致使用如上

VB中怎样模拟鼠标双击操作?

当然可以啊。

使用API函数mouse_event可以模拟鼠标事件,比如左键单击、双击和右键单击等。这个实例利用此函数产生了十分有趣的效果,无论鼠标处于屏幕的任何位置,每隔一秒程序会使鼠标在那个位置单击或双击一次,这会给我们造成什么样的混乱呢?试一试就知道了。

先在程序中加入如下的声明后,就能引用mouse_event函数:

Private Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)

其中各个参数的意义如下表所示:

参数 意义

dwFlags Long,下表中标志之一或它们的组合

dx,dy Long,根据MOUSEEVENTF_ABSOLUTE标志,指定x,y方向的绝对位置或相对位置

cButtons Long,没有使用

dwExtraInfo Long,没有使用

dwFlags常数 意义

MOUSEEVENTF_MOVE H1,移动鼠标

MOUSEEVENTF_LEFTDOWN H2,模拟鼠标左键按下

MOUSEEVENTF_LEFTUP H4,模拟鼠标左键抬起

MOUSEEVENTF_RIGHTDOWN H8,模拟鼠标右键按下

MOUSEEVENTF_RIGHTUP H10,模拟鼠标右键抬起

MOUSEEVENTF_MIDDLEDOWN H20,模拟鼠标中键按下

MOUSEEVENTF_MIDDLEUP H40,模拟鼠标中键抬起

MOUSEEVENTF_ABSOLUTE H8000,标示是否采用绝对坐标

程序中我们这样使用mouse_event函数:

1、这里是鼠标左键按下和松开两个事件的组合即一次单击:

mouse_event MOUSEEVENTF_LEFTDOWN Or MOUSEEVENTF_LEFTUP, 0, 0, 0, 0

2、模拟鼠标右键单击事件:

mouse_event MOUSEEVENTF_RIGHTDOWN Or MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0

3、两次连续的鼠标左键单击事件 构成一次鼠标双击事件:

mouse_event MOUSEEVENTF_LEFTDOWN Or MOUSEEVENTF_LEFTUP, 0, 0, 0, 0

mouse_event MOUSEEVENTF_LEFTDOWN Or MOUSEEVENTF_LEFTUP, 0, 0, 0, 0

如上面所示如果我们要使用两个dwFlags常数的组合时,可以用Or将其连接起来。本例中我们把dx,dy参数都设为0,是指每次模拟事件的位置是鼠标的当前位置,dx,dy在没有使用MOUSEEVENTF_ABSOLUTE标志时是相对于鼠标当前位置的坐标,如果设置为使用绝对坐标,则dx,dy是相对于屏幕的坐标。

然后把这些语句放在Timer控件的Timer事件中,就能实现每一定间隔模拟一次鼠标事件了。

说明:我不是很会VC,所以只给出VB里面调用得方法。抱歉。

VB.NET 如何模拟鼠标事件 - VB.NET -

录制回放没有问题,可是在鼠标移动过程中怎么去捕获,鼠标进行了单击,还是双击呢.捕获不到回放的时候不知道什么时候该单击还是双击.

当前标题:VB点虐 模拟两个鼠标 vb模拟鼠标点击
文章链接:https://www.cdcxhl.com/article24/ddejdje.html

成都网站建设公司_创新互联,为您提供云服务器标签优化网站制作营销型网站建设软件开发网站设计公司

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

h5响应式网站建设