急急急!按键精灵怎么实现后台鼠标点击?

示例:关闭计算器 关闭计算器叉叉的坐标X=202 Y=19
2025-04-04 14:43:54
推荐回答(1个)
回答1:

//后台循环按键---------------------------------------------
点击 = WaitClick()//等待点击要抓取的窗口
//按键 = WaitKey()//等待按键
Delay 10//等待时间10毫秒

//得到鼠标指向的窗口句柄
Hwnd = Plugin.Window.MousePoint()
do
Delay 1000
//向后台窗口句柄(变量:Hwnd)发送一个键盘(扫描码:49)按键("1")如果你会查按键的扫描码.你就自己查出来,自己改改.如果你不会,我也没办法,我也没有时间.
Call Plugin.Bkgnd.KeyPress(Hwnd, 49)
Delay 500
loop

//后台循环左键点击
点击 = WaitClick()//等待点击要抓取的窗口
//按键 = WaitKey()//等待按键
Delay 10//等待时间10毫秒
//得到鼠标指向的窗口句柄
Hwnd = Plugin.Window.MousePoint()

//下面这句是得到窗口句柄的客户区大小
sRect = Plugin.Window.GetClientRect(Hwnd)
//MsgBox "得到窗口句柄的客户区大小为:"& sRect
//下面这句用于分割字符串,将横坐标和纵坐标分成两个字符串
//dim MyArray
MyArray = Split(sRect, "|")
//下面这句将字符串转换成数值
L = Clng(MyArray(0)): T = Clng(MyArray(1))
R = Clng(MyArray(2)): B = Clng(MyArray(3))
//Msgbox "窗口客户端后台坐标系原点的前台坐标x0" & L & ",窗口客户端后台坐标系原点的前台坐标y0" & T & ", 窗口客户端后台坐标x的最大值(宽)"& R & ",窗口客户端后台坐标y的最大值(高)" & B
do
Delay 1000
//向后台窗口句柄(变量:Hwnd)的客户区域(坐标:0, 0)处发送一个鼠标左键单击,自己改后台坐标.
Call Plugin.Bkgnd.LeftClick(Hwnd, 0, 0)//后台坐标系

//Call Plugin.Bkgnd.LeftClick(Hwnd, x, y)//用变量
//Call Plugin.Bkgnd.LeftClick(Hwnd, x-l, y-t)//(变量为前台坐标系)
Delay 500
Loop
//指定点后台点击的例子------------------------
点击 = WaitClick()//等待点击
Delay 10
//得到鼠标指向的窗口句柄
Hwnd = Plugin.Window.MousePoint()
GetCursorPos x, y//保存当前坐标
//下面这句是得到窗口句柄的客户区大小
sRect = Plugin.Window.GetClientRect(Hwnd)
//MsgBox "得到窗口句柄:"& hwnd //显示句柄
//下面这句用于分割字符串,将横坐标和纵坐标分成两个字符串
//dim MyArray
MyArray = Split(sRect, "|")
//下面这句将字符串转换成数值
L = Clng(MyArray(0)): T = Clng(MyArray(1))
R = Clng(MyArray(2)): B = Clng(MyArray(3))
Do//循环开始
Delay 1000//等待1秒
Call Plugin.Bkgnd.LeftClick(Hwnd, x-l, y-t)//(变量为前台坐标系)
Loop//循环结点