vbs鼠标方法——模拟鼠标按键

简介: '*********************************************************************** ' 代码开始 '*********************************************************************** Set mouse=New SetMouse mouse.

'***********************************************************************


' 代码开始

'***********************************************************************

Set mouse=New SetMouse

mouse.getpos x,y ''获得鼠标当前位置坐标

MsgBox x & " " & y


mouse.move 60,14 '把鼠标移动到坐标
WScript.Sleep 200
mouse.clik "dbclick" ’左击

' "right" 右击, "middle" 中间键点击

 

'*****************将以下代码加入到vbs文件末就能如以上方法调用*******************************************************************************************

 

'****************************************************************************************************************************************************

Class SetMouse
private S
private xls, wbk, module1
private reg_key, xls_code, x, y


Private Sub Class_Initialize()
Set xls = CreateObject("Excel.Application")
Set S = CreateObject("wscript.Shell")
'vbs 完全控制excel
reg_key = "HKEY_CURRENT_USER\Software\Microsoft\Office\$\Excel\Security\AccessVBOM"
reg_key = Replace(reg_key, "$", xls.Version)
S.RegWrite reg_key, 1, "REG_DWORD"
'model 代码
xls_code = _
"Private Type POINTAPI : X As Long : Y As Long : End Type" & vbCrLf & _
"Private Declare Function SetCursorPos Lib ""user32"" (ByVal x As Long, ByVal y As Long) As Long" & vbCrLf & _
"Private Declare Function GetCursorPos Lib ""user32"" (lpPoint As POINTAPI) As Long" & vbCrLf & _
"Private Declare Sub mouse_event Lib ""user32"" Alias ""mouse_event"" " _
& "(ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)" & vbCrLf & _
"Public Function getx() As Long" & vbCrLf & _
"Dim pt As POINTAPI : GetCursorPos pt : getx = pt.X" & vbCrLf & _
"End Function" & vbCrLf & _
"Public Function gety() As Long" & vbCrLf & _
"Dim pt As POINTAPI: GetCursorPos pt : gety = pt.Y" & vbCrLf & _
"End Function"
Set wbk = xls.Workbooks.Add
Set module1 = wbk.VBProject.VBComponents.Add(1)
module1.CodeModule.AddFromString xls_code
End Sub


'关闭
Private Sub Class_Terminate
xls.DisplayAlerts = False
wbk.Close
xls.Quit
End Sub

'可调用过程


Public Sub getpos( x, y)
x = xls.Run("getx")
y = xls.Run("gety")
End Sub


Public Sub move(x,y)
xls.Run "SetCursorPos", x, y
End Sub

 

Public Sub clik(keydown)
Select Case UCase(keydown)
Case "LEFT"
xls.Run "mouse_event", &H2 + &H4, 0, 0, 0, 0
Case "RIGHT"
xls.Run "mouse_event", &H8 + &H10, 0, 0, 0, 0
Case "MIDDLE"
xls.Run "mouse_event", &H20 + &H40, 0, 0, 0, 0
Case "DBCLICK"
xls.Run "mouse_event", &H2 + &H4, 0, 0, 0, 0
xls.Run "mouse_event", &H2 + &H4, 0, 0, 0, 0
End Select
End Sub


End Class

 


'***********************************************************************


'代码结束

'***********************************************************************



'****************************************************************************************************************************************************

技术改变世界! --狂诗绝剑
目录
相关文章
|
Shell
VBS控制鼠标移动和点击(附源代码下载)
森思:想用vbs来控制鼠标的移动和点击,虽然按键精灵可以做到,但做这么简单的事情不想启动那么大一个程序,所以自己用VC写了一个小程序,可以让VBS来控制鼠标移动和点击。 用法: 移动鼠标到桌面坐标200,50的vbs命令如下: CreateObject("WScript.
4637 0
|
存储 IDE 区块链
《Solidity 简易速速上手小册》第3章:Solidity 语法基础(2024 最新版)
《Solidity 简易速速上手小册》第3章:Solidity 语法基础(2024 最新版)
509 2
|
Windows
电脑win系统开机自动运行批处理、脚本等的方法/开机自动执行bat脚本
电脑win系统开机自动运行批处理、脚本等的方法/开机自动执行bat脚本
1343 0
23【办公软件】WPS2019打开时报错:安装Office自定义项,安装期间出错
左下角【开始】按钮,点击【运行】,在对话框输入【regedit】打开注册表
2385 0
|
3月前
|
人工智能 自然语言处理 安全
大模型备案材料—《安全评估报告》撰写指南
本文详解大模型备案中的关键材料——《安全评估报告》的撰写要点,涵盖报告框架、必备内容、注意事项及基础信息,助你高效通过备案。
|
24天前
|
SQL 弹性计算 安全
阿里云服务器全方位介绍:云服务器是什么?应用场景、购买流程、活动价格及使用教程参考
阿里云服务器凭借其强大的性能、灵活的配置和丰富的应用场景,已成为众多企业和个人用户购买云服务器的首选云服务商。本文将从阿里云服务器的定义、应用场景、价格分析、租用购买流程以及使用技巧等方面进行全面解析,帮助用户更好地了解和应用阿里云服务器。
|
24天前
|
弹性计算
阿里云服务器最便宜多少钱一年?亲测38元一年
阿里云新用户可抢38元/年轻量服务器(2核2G、200M带宽、不限流量),每日10:00、15:00限量抢购;非新用户可选ECS经济型实例,99元/年(2核2G、3M带宽、40G硬盘),续费同价,限一台。
210 5
|
SQL 监控 Oracle
关系型数据库Oracle并行执行
【7月更文挑战第12天】
422 14
SpringBoot项目配置热部署启动 及 热部署失效的问题解决
这篇文章介绍了如何在SpringBoot项目中配置热部署启动,包括在pom文件中添加热部署依赖、在IDEA中进行设置、修改配置文件以及IDEA启动设置,以解决热部署失效的问题。
SpringBoot项目配置热部署启动 及 热部署失效的问题解决
|
运维 监控 数据可视化
大数据-171 Elasticsearch ES-Head 与 Kibana 配置 使用 测试
大数据-171 Elasticsearch ES-Head 与 Kibana 配置 使用 测试
426 1