按键精灵怎样根据分辨率判断是否执行脚本
我想知道我这样调用插件,能不能得到当前游戏的分辨率,并判断是否执行不同的操作,游戏是全屏的,和系统分辨率不同。如果不行,应该调用哪个插件并判断呢?希望大牛帮帮忙了···x...
我想知道我这样调用插件,能不能得到当前游戏的分辨率,并判断是否执行不同的操作,游戏是全屏的,和系统分辨率不同。如果不行,应该调用哪个插件并判断呢?希望大牛帮帮忙了···
x = Plugin.Sys.GetScRX()
y = Plugin.Sys.GetScRX()
SetSimMode 0
If "x=800 ,y=600" Then
MoveTo 424, 340
Delay 100
LeftClick 1
Delay 300
MoveTo 76, 366
Delay 300
LeftClick 1
Delay 100
MoveTo 874, 223
Delay 100
LeftClick 1
Delay 100
KeyPress "BackSpace", 15
Delay 100
SayString "****"
Delay 100
MoveTo 474, 587
Delay 100
LeftClick 1
Delay 100
EndScript
End If
If "x=1152 ,y=864" Then
MoveTo 478, 379
Delay 100
LeftClick 1
Delay 300
MoveTo 87, 408
Delay 300
LeftClick 1
Delay 100
MoveTo 984, 252
Delay 100
LeftClick 1
Delay 100
KeyPress "BackSpace", 15
Delay 100
SayString "****"
Delay 100
MoveTo 526, 662
Delay 100
LeftClick 1
Delay 100
EndScript
End If 展开
x = Plugin.Sys.GetScRX()
y = Plugin.Sys.GetScRX()
SetSimMode 0
If "x=800 ,y=600" Then
MoveTo 424, 340
Delay 100
LeftClick 1
Delay 300
MoveTo 76, 366
Delay 300
LeftClick 1
Delay 100
MoveTo 874, 223
Delay 100
LeftClick 1
Delay 100
KeyPress "BackSpace", 15
Delay 100
SayString "****"
Delay 100
MoveTo 474, 587
Delay 100
LeftClick 1
Delay 100
EndScript
End If
If "x=1152 ,y=864" Then
MoveTo 478, 379
Delay 100
LeftClick 1
Delay 300
MoveTo 87, 408
Delay 300
LeftClick 1
Delay 100
MoveTo 984, 252
Delay 100
LeftClick 1
Delay 100
KeyPress "BackSpace", 15
Delay 100
SayString "****"
Delay 100
MoveTo 526, 662
Delay 100
LeftClick 1
Delay 100
EndScript
End If 展开
1个回答
展开全部
给你代码,自己往里套~请采纳~
Call RunApp("notepad.exe")
Delay 1500
//0表示忽略
//下面这句是查找窗口类名("Notepad")或者标题(0),返回找到的句柄Hwnd
Hwnd = Plugin.Window.Find("Notepad", 0)
//下面这句是得到窗口句柄的边框大小(包括标题栏)
sRect = Plugin.Window.GetWindowRect(Hwnd)
MsgBox "得到窗口句柄的边框大小(包括标题栏)为:"& sRect
//下面这句用于分割字符串,将横坐标和纵坐标分成两个字符串
dim MyArray
MyArray = Split(sRect, "|")
//下面这句将字符串转换成数值
W1 = Clng(MyArray(0)): H1 = Clng(MyArray(1))
W2 = Clng(MyArray(2)): H2 = Clng(MyArray(3))
MsgBox "边框大小: " & W2-W1 & " " & H2-H1
Call RunApp("notepad.exe")
Delay 1500
//0表示忽略
//下面这句是查找窗口类名("Notepad")或者标题(0),返回找到的句柄Hwnd
Hwnd = Plugin.Window.Find("Notepad", 0)
//下面这句是得到窗口句柄的边框大小(包括标题栏)
sRect = Plugin.Window.GetWindowRect(Hwnd)
MsgBox "得到窗口句柄的边框大小(包括标题栏)为:"& sRect
//下面这句用于分割字符串,将横坐标和纵坐标分成两个字符串
dim MyArray
MyArray = Split(sRect, "|")
//下面这句将字符串转换成数值
W1 = Clng(MyArray(0)): H1 = Clng(MyArray(1))
W2 = Clng(MyArray(2)): H2 = Clng(MyArray(3))
MsgBox "边框大小: " & W2-W1 & " " & H2-H1
追问
真心没整明白,我取到msgbox边框大小了,但是这个取得的是不是就是当前窗口的分辨率啊?然后我在下面用IF语句判断边框大小再执行脚本么?
追答
W2-W1的数值就是X坐标。
H2-H1的 数值就是Y坐标
然后你可以把它们存到变量
a=W2-W1
B=H2-H1
然后你就这么写
如果,a=多少,B=多少 则
调用XX子程序
否则若果 a=多少,B=多少则
调用XX子程序
条件结束
你自己套吧。。就是根据数值来执行
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询