按键精灵鼠标的后台运行!求高手指点
发布网友
发布时间:2022-04-24 16:51
我来回答
共2个回答
热心网友
时间:2023-10-25 02:19
Hwnd
=
Plugin.Window.MousePoint()
//获取句柄
Plugin.Bkgnd.MoveTo
(hwnd,坐标x,坐标y)
//后台鼠标移动
Plugin.Bkgnd.RightClick
(hwnd,坐标x,坐标y)
//后台右键
Plugin.Bkgnd.LeftClick(hwnd,坐标x,坐标y)
//后台左键
多开方法:
按键精灵的脚本属性里(按键精灵右上角)有个禁止脚本重复运行
-
选否
对一个窗口启动后,再对另外一个窗口启动
如果要脚本永远不断的重复点
可以下面的例子代码
主要是要加上
do
loop
中间的代码是重复运行的
do
Plugin.Bkgnd.RightClick
(hwnd,619,383)
delay
3500
Plugin.Bkgnd.RightClick
(hwnd,1006,275)
delay
1000
loop
纯手工回答.
热心网友
时间:2023-10-25 02:20
首先,你的代码有问题,leftclick是单击的意思,leftup是鼠标弹起的意思
leftdown是鼠标按下的意思,leftup和leftdown要一起用,leftclick后不需要跟leftup
其次,后台窗口的坐标用的不是屏幕坐标,而是窗口客户区坐标
//得到鼠标指向的窗口句柄
Plugin Hwnd = Window.MousePoint()
//下面这句是得到窗口句柄的客户区大小
Plugin sRect = Window.GetClientRect(Hwnd)
//下面这句用于分割字符串,将横坐标和纵坐标分成两个字符串
MyArray = Split(sRect, "|")
//下面这句将字符串转换成数值
L = Clng(MyArray(0)): T = Clng(MyArray(1))
//向句柄为Hwnd的客户区坐标940-L,452-T处发送一个鼠标左键单击
Plugin Bkgnd.LeftClick(Hwnd, 940-L, 452-T)
Delay 100
Plugin Bkgnd.LeftClick(Hwnd, 917-L, 496-T)