按鍵精靈的鼠標(biāo)動作錄制是一項(xiàng)非常好用的功能,但因?yàn)槭髽?biāo)點(diǎn)擊的地方是固定死板的,且延遲時(shí)間無法調(diào)整,如果在后臺腳本中添加一些專用代碼,就可以調(diào)整點(diǎn)擊頻率和點(diǎn)擊時(shí)間,甚至可以在安卓模擬器上使用模擬按壓式點(diǎn)擊,當(dāng)然,這只是冰山一角,創(chuàng)造腳本為專業(yè)連續(xù)作業(yè)做準(zhǔn)備才好玩呢!
按鍵精靈腳本代碼大全:
【資料圖】
小技巧:按Ctrl+F,輸入命令,即可進(jìn)行查找定位:
鍵盤命令 | 鍵盤模擬命令 | ||
[KeyPress]"按下再彈起"鍵 | [KeyDown]"按下"鍵 | [KeyUp]"彈起"鍵 | |
鍵盤控制命令 | |||
[WaitKey]等待按鍵 | [GetLastKey]獲取上一次按鍵碼 | ||
鼠標(biāo)命令 | 鼠標(biāo)模擬命令 | ||
[LeftClick]模擬點(diǎn)擊鼠標(biāo)左鍵 | [RightClick]模擬點(diǎn)擊鼠標(biāo)右鍵 | [MiddleClick]模擬點(diǎn)擊鼠標(biāo)中鍵 | |
[LeftDoubleClick]模擬雙擊鼠標(biāo)左鍵 | [LeftDown]模擬按下鼠標(biāo)左鍵 | [LeftUp]模擬松開鼠標(biāo)左鍵 | |
[RightDown]模擬按下鼠標(biāo)右鍵 | [RightUp]模擬松開鼠標(biāo)右鍵 | ||
[MoveTo]移動鼠標(biāo) | [MoveR]鼠標(biāo)相對移動 | [MouseWheel]滾動鼠標(biāo)滾輪 | |
鼠標(biāo)控制命令 | |||
[WaitClick]等待按鼠標(biāo) | [GetLastClick]獲取上一次按下的鼠標(biāo)代碼 | ||
鼠標(biāo)輔助命令 | |||
[SaveMousePos]保存當(dāng)前鼠標(biāo)位置 | [RestoreMousePos]將鼠標(biāo)移動到上一次保存的鼠標(biāo)位置 | ||
[LockMouse]鎖定鼠標(biāo)位置 | [UnlockMouse]解除鼠標(biāo)鎖定 | ||
控制命令 | 流程控制命令 | ||
[If]判斷語句 | [Goto]跳轉(zhuǎn)語句 | [Rem]Goto命令的標(biāo)記,也可以做注釋 | |
[While] ... [EndWhile]循環(huán) | [For] ... [EndFor]循環(huán) | [EndScript]腳本結(jié)束 | |
顏色控制命令 | |||
[IfColor]判斷屏幕x,y坐標(biāo)的某點(diǎn)的顏色,來執(zhí)行后面的動作或控制 | |||
過程 | |||
[Sub] . [Return]定義過程 | [Gosub]調(diào)用過程 | ||
其他命令 | [Delay]腳本暫停執(zhí)行 | [MessageBox]彈出一個(gè)窗口 | [SayString]輸入文字,支持變量 |
[Import]導(dǎo)入VBS或插件命令 | [VBSBegin] ...[VBSEnd]VBS區(qū)塊 | [VBS]單行VBS指令 | |
[VBSCall]執(zhí)行外部VBScript函數(shù) | [Plugin]調(diào)用一個(gè)外部插件提供的函數(shù) | [UserVar]用戶自定義設(shè)置 | |
[PutAttachment]展開附件 | [//]注釋命令 | [TracePrint]調(diào)試窗口顯示文字 | |
VBS命令 | [VBSCall Delay] 腳本停止執(zhí)行一段時(shí)間,支持變量 | [VBSCall FindCenterColor] 從屏幕某個(gè)區(qū)域的中間開始找色 | [VBSCall FindColor] 在屏幕指定區(qū)域從左到右找色 |
[VBSCall FindColorEx] 模糊找色功能 | [VBSCall FindPic] 找圖片,可設(shè)定相似度 | [VBSCall GetCursorPos] 獲得當(dāng)前鼠標(biāo)的坐標(biāo) | |
[VBSCall GetPixelColor] 獲得指定位置點(diǎn)的顏色 | [VBSCall GetScreenResolution] 獲得當(dāng)前屏幕分辨率 | [VBSCall InputBox] "彈出"對話框允許用戶輸入文字 | |
[VBSCall MessageBox] 彈出對話框,支持變量 | [VBSCall ReadMemory] 讀取本機(jī)指定內(nèi)存地址的數(shù)值 | [VBSCall RunApp] 運(yùn)行一個(gè)程序,或打開一個(gè)文件 | |
[VBSCall SayString] 輸入文本. | [VBSCall SetCursorPos] 設(shè)置鼠標(biāo)位置 | [VBSCall GetCursorShape] 獲得鼠標(biāo)形狀 |
按鍵精靈命令使用方法:
鍵盤命令分為兩大類:鍵盤模擬命令和鍵盤控制命令.鍵盤模擬命令可以模擬我們?nèi)粘2僮麈I盤的行為.操作鍵盤的動作分為三類:按下、彈起、按下并彈起.鍵盤控制命令可以在腳本執(zhí)行過程中通過鍵盤控制腳本行為.
[KeyPress、KeyPressS、KeyPressH]
格式: KeyPress {鍵盤虛擬碼},{次數(shù)}
解釋: 先"按下"再"彈起"鍵,模擬我們平時(shí)的"按鍵"操作.
我們在使用鍵盤的時(shí)候有兩種操作,一種是"按下"鍵,一種是"彈起"鍵.將這兩個(gè)動作連續(xù)進(jìn)行,就是一個(gè)完整的"按鍵"動作.
KeyPressS: 超級模擬方式,兼容性更強(qiáng),對鍵盤和鼠標(biāo)沒有特別的要求,PS2(圓口)和USB接口的鍵盤都可以使用
KeyPressH: 硬件模擬方式,僅支持PS(圓口)的鍵盤
例子:
KeyPress 65,1
65是A鍵的按鍵碼,上面的語句表示按A鍵1次
[KeyDown、KeyDownS、KeyDownH]
格式: KeyDown {鍵盤虛擬碼},{次數(shù)}
解釋: "按下"鍵,模擬我們平時(shí)的"按下"操作
注意:有些鍵在按下之后,會和其他鍵產(chǎn)生組合效果,比如"Alt/Ctrl/Shift"
如果使用"按下Alt"命令,那么之后的"按鍵"動作將變成"Alt+A"等組合動作
因此記得在必要時(shí)使用"彈起"命令將組合鍵釋放,避免影響鍵盤的正常使用.
KeyDownS: 超級模擬方式,兼容性更強(qiáng),對鍵盤和鼠標(biāo)沒有特別的要求,PS2(圓口)和USB接口的鍵盤都可以使用
KeyDownH: 硬件模擬方式,僅支持PS(圓口)的鍵盤
例子:
KeyDown 65,1
65是A鍵的按鍵碼,上面的語句表示按下A鍵1次
[KeyUp、KeyUpS、KeyUpH]
格式: KeyUp {鍵盤虛擬碼} {次數(shù)}
解釋:"彈起"鍵,模擬我們平時(shí)的"彈起"操作
KeyUpS: 超級模擬方式,兼容性更強(qiáng),對鍵盤和鼠標(biāo)沒有特別的要求,PS2(圓口)和USB接口的鍵盤都可以使用
KeyUpH: 硬件模擬方式,僅支持PS(圓口)的鍵盤
例子:
KeyUp 65,1
65是A鍵的按鍵碼,上面的語句表示松開A鍵1次
鼠標(biāo)命令介紹
鼠標(biāo)命令分為三大類:模擬鼠標(biāo)按鍵命令、模擬鼠標(biāo)移動命令、鼠標(biāo)控制命令.模擬鼠標(biāo)按鍵可以模擬鼠標(biāo)的左鍵、右鍵、中鍵和滾輪的動作.鼠標(biāo)的動作分為三類:按下、彈起、按下并彈起.模擬鼠標(biāo)移動命令支持移動到屏幕的某個(gè)坐標(biāo)、將鼠標(biāo)移動一個(gè)相對的坐標(biāo)鼠標(biāo)控制命令可以在腳本執(zhí)行過程中通過鼠標(biāo)控制腳本.
[LeftClick、LeftClickS、LeftClickH]
格式:LeftClick {次數(shù)}
解釋:在鼠標(biāo)當(dāng)前位置模擬點(diǎn)擊鼠標(biāo)左鍵.{次數(shù)}可以控制點(diǎn)擊的次數(shù)
LeftClickS: 超級模擬方式,兼容性更強(qiáng),對鍵盤和鼠標(biāo)沒有特別的要求,PS2(圓口)和USB接口的鼠標(biāo)都可以使用
LeftClickH: 硬件模擬方式,僅支持PS(圓口)的鼠標(biāo)
例子:
LeftClick 5
在當(dāng)前鼠標(biāo)的位置單擊鼠標(biāo)左鍵5次
[RightClick、RightClickS、RightClickH]
格式:RightClick {次數(shù)}
解釋:在鼠標(biāo)當(dāng)前位置模擬點(diǎn)擊鼠標(biāo)右鍵.{次數(shù)}可以控制點(diǎn)擊的次數(shù)
RightClickS: 超級模擬方式,兼容性更強(qiáng),對鍵盤和鼠標(biāo)沒有特別的要求,PS2(圓口)和USB接口的鼠標(biāo)都可以使用
RightClickH: 硬件模擬方式,僅支持PS(圓口)的鼠標(biāo)
例子:
RightClick 5
在當(dāng)前鼠標(biāo)的位置單擊鼠標(biāo)右鍵5次
[MiddleClick、MiddleClickS、MiddleClickH]
格式:MiddleClick {次數(shù)}
解釋:在鼠標(biāo)當(dāng)前位置模擬點(diǎn)擊鼠標(biāo)中鍵.
MiddleClickS: 超級模擬方式,兼容性更強(qiáng),對鍵盤和鼠標(biāo)沒有特別的要求,PS2(圓口)和USB接口的鼠標(biāo)都可以使用
MiddleClickH: 硬件模擬方式,僅支持PS(圓口)的鼠標(biāo)
例子:
MiddleClick 5
在當(dāng)前鼠標(biāo)的位置單擊鼠標(biāo)中鍵5次
[LeftDoubleClick、LeftDoubleClickS、LeftDoubleClickH]
格式:LeftDoubleClick {次數(shù)}
解釋:在鼠標(biāo)當(dāng)前位置模擬雙擊鼠標(biāo)左鍵.
LeftDoubleClickS: 超級模擬方式,兼容性更強(qiáng),對鍵盤和鼠標(biāo)沒有特別的要求,PS2(圓口)和USB接口的鼠標(biāo)都可以使用
LeftDoubleClickH: 硬件模擬方式,僅支持PS(圓口)的鼠標(biāo)
例子:
LeftDoubleClick 5
在當(dāng)前鼠標(biāo)的位置雙擊鼠標(biāo)左鍵5次
[LeftDown、LeftDownS、LeftDownH]
格式:LeftDown {次數(shù)}
解釋:在鼠標(biāo)當(dāng)前位置模擬按下鼠標(biāo)左鍵,{次數(shù)}在這個(gè)語句中雖然有效,但沒有實(shí)際意義.
LeftDownS: 超級模擬方式,兼容性更強(qiáng),對鍵盤和鼠標(biāo)沒有特別的要求,PS2(圓口)和USB接口的鼠標(biāo)都可以使用
LeftDownH: 硬件模擬方式,僅支持PS(圓口)的鼠標(biāo)
例子:
LeftDown 1
在當(dāng)前鼠標(biāo)的位置按下鼠標(biāo)左鍵
[LeftUp、LeftUpS、LeftUpH]
格式:LeftUp {次數(shù)}
解釋:在鼠標(biāo)當(dāng)前位置模擬松開鼠標(biāo)左鍵,{次數(shù)}在這個(gè)語句中雖然有效,但沒有實(shí)際意義.
LeftUpS: 超級模擬方式,兼容性更強(qiáng),對鍵盤和鼠標(biāo)沒有特別的要求,PS2(圓口)和USB接口的鼠標(biāo)都可以使用
LeftUpH: 硬件模擬方式,僅支持PS(圓口)的鼠標(biāo)
例子:
LeftUp 1
在當(dāng)前鼠標(biāo)的位置彈起鼠標(biāo)左鍵
[RightDown、RightDownS、RightDownH]
格式:RightDown {次數(shù)}
解釋:在鼠標(biāo)當(dāng)前位置模擬按下鼠標(biāo)右鍵,{次數(shù)}在這個(gè)語句中雖然有效,但沒有實(shí)際意義.
RightDownS: 超級模擬方式,兼容性更強(qiáng),對鍵盤和鼠標(biāo)沒有特別的要求,PS2(圓口)和USB接口的鼠標(biāo)都可以使用
RightDownH: 硬件模擬方式,僅支持PS(圓口)的鼠標(biāo)
例子:
RightDown 1
在當(dāng)前鼠標(biāo)的位置按下鼠標(biāo)右鍵
[RightUp、RightUpS、RightUpH]
格式:RightUp {次數(shù)}
解釋:在鼠標(biāo)當(dāng)前位置模擬松開鼠標(biāo)右鍵,{次數(shù)}在這個(gè)語句中雖然有效,但沒有實(shí)際意義
RightUpS: 超級模擬方式,兼容性更強(qiáng),對鍵盤和鼠標(biāo)沒有特別的要求,PS2(圓口)和USB接口的鼠標(biāo)都可以使用
RightUpH: 硬件模擬方式,僅支持PS(圓口)的鼠標(biāo)
例子:
RightUp 1
在當(dāng)前鼠標(biāo)的位置彈起鼠標(biāo)右鍵
[MoveTo、MoveToS、MoveToH]
格式:MoveTo {X坐標(biāo)},{Y坐標(biāo)}
解釋:移動鼠標(biāo)到(X坐標(biāo),Y坐標(biāo))處
MoveToS: 超級模擬方式,兼容性更強(qiáng),對鍵盤和鼠標(biāo)沒有特別的要求,PS2(圓口)和USB接口的鼠標(biāo)都可以使用
MoveToH: 硬件模擬方式,僅支持PS(圓口)的鼠標(biāo)
例子:
MoveTo 100,200
把鼠標(biāo)移動到(100,200)這個(gè)點(diǎn)上
MoveTo intX,intY
把鼠標(biāo)移動到(intX,intY)這個(gè)點(diǎn)上,需要5.50以上版本支持.
[MoveR、MoveRS、MoveRH]
格式:MoveR {X距離},{Y距離}
解釋:把鼠標(biāo)相對移動(X距離,Y距離)
MoveRS: 超級模擬方式,兼容性更強(qiáng),對鍵盤和鼠標(biāo)沒有特別的要求,PS2(圓口)和USB接口的鼠標(biāo)都可以使用
MoveRH: 硬件模擬方式,僅支持PS(圓口)的鼠標(biāo)
例子:
當(dāng)前鼠標(biāo)在(100,100)點(diǎn),使用下面語句
MoveR 200,300
之后,鼠標(biāo)就被移到了(100+200,100+300)處,也就是坐標(biāo)(300,400)處
提示:使用硬件模擬方式不能碰鍵盤鼠標(biāo),否則會導(dǎo)致
[MouseWheel]
格式:MouseWheel {滾動量}
解釋:滾動鼠標(biāo)滾輪.如果滾動量為正,向上滾動;否則向下滾動.
僅支持Windows 2000以上的操作系統(tǒng).
例子:
MouseWheel 1
把鼠標(biāo)滾輪向上滾動1格
[SaveMousePos][RestoreMousePos]
格式: SaveMousePos
解釋: 保存當(dāng)前鼠標(biāo)位置
格式: RestoreMousePos
解釋: 將鼠標(biāo)移動到上一次保存的鼠標(biāo)位置
例子: 保存/恢復(fù)鼠標(biāo)位置常用于制作網(wǎng)絡(luò)游戲練功腳本,腳本開始時(shí)保存鼠標(biāo)位置,腳本結(jié)束時(shí)恢復(fù)鼠標(biāo)位置
這樣腳本執(zhí)行后鼠標(biāo)的位置就不會變化
[LockMouse]
格式: LockMouse
解釋: 鎖定鼠標(biāo)位置,用戶將不能通過移動鼠標(biāo)而改變鼠標(biāo)位置,而腳本仍可以改變鼠標(biāo)位置
例子: 在腳本開始的時(shí)候使用這個(gè)命令,可以有效防止用戶誤觸鼠標(biāo)引起腳本執(zhí)行出錯(cuò)
[UnlockMouse]
格式: UnlockMouse
解釋: 解除LockMouse命令對鼠標(biāo)位置的鎖定.如果用戶使用了LockMouse命令而沒有使用UnlockMouse命令,
按鍵精靈會在腳本結(jié)束時(shí)自動解除鎖定
[WaitKey]
格式:WaitKey {可選:變量名}(注意這里是"變量名"不是"表達(dá)式")
解釋:腳本運(yùn)行到此句之后暫停,等待用戶按鍵,用戶按鍵之后,將按鍵結(jié)果保存到變量當(dāng)中.
例子:
WaitKey x
腳本運(yùn)行到這一行會暫停,當(dāng)用戶按下鍵盤后繼續(xù)執(zhí)行,并且把用戶的按鍵碼保存在變量x里
[GetLastKey]
格式:GetLastKey {可選:變量名}(注意這里是"變量名"不是"表達(dá)式")
解釋:腳本運(yùn)行到此句之后不暫停,將上次用戶按鍵的結(jié)果保存到變量當(dāng)中.
例子:
GetLastKey x
腳本運(yùn)行到這一行不會暫停,會把運(yùn)行完畢這一行之后的第一次按鍵的按鍵碼保存在變量x里
[WaitClick]
格式: WaitClick {可選:變量名}(注意這里是"變量名"不是"表達(dá)式")
解釋: 腳本執(zhí)行到這一句暫停,按下任意鼠標(biāo)鍵之后繼續(xù),按下的鼠標(biāo)鍵將被記錄在變量之中
例子: WaitClick last_click
VBSCall MessageBox("您按下了" & last_click)
[GetLastClick]
格式: GetLastClick {可選:變量名}(注意這里是"變量名"不是"表達(dá)式")
解釋: 檢測上一次按下的鼠標(biāo)代碼,不影響腳本執(zhí)行的流程
控制命令介紹
在腳本運(yùn)行過程中,需要通過各種條件來控制命令.按鍵精靈支持豐富的控制指令,包括基本的循環(huán)、判斷、過程等.同時(shí)也提供了一些非常有特色的控制命令,比如通過屏幕顏色來進(jìn)行判斷.合理的用好這些控制命令,可以讓你的腳本變得更加聰明!
[Sub]
格式:
Sub {過程名}
…
Return
解釋: 定義一個(gè)過程,可以在腳本中調(diào)用這個(gè)過程
[Return]
格式:
Sub {過程名}
…
Return
解釋: 定義一個(gè)過程,可以在腳本中調(diào)用這個(gè)過程
[Gosub]
格式:
GoSub {過程名}
解釋:調(diào)用過程
[If]
格式:If {表達(dá)式}…ElseIf…Else…EndIf
解釋:判斷表達(dá)式抓點(diǎn)顏色并執(zhí)行語句--通過判斷表達(dá)式的取值,來執(zhí)行后面的動作或控制
[IfColor]
格式:IfColor {X坐標(biāo)},{Y坐標(biāo)},{顏色},{判斷條件(0:等于 1,不等于 2:近似等于)}…ElseIf…Else…EndIf
解釋:判斷顏色并執(zhí)行語句--通過判斷屏幕x,y坐標(biāo)的某點(diǎn)的顏色,是等于、不等于、還是近似某顏色,來執(zhí)行后面的動作或控制
例子:
IfColor 860,27,e1b072,0
Else
EndIf
判斷坐標(biāo)點(diǎn)(860,27)的顏色是否等于e1b072
[Else]
格式:If {表達(dá)式}…ElseIf…Else…EndIf
或 IfColor {X坐標(biāo)} {Y坐標(biāo)} {顏色} {判斷條件(0:等于 1:不等于 2:近似等于)}…ElseIf…Else…EndIf
解釋:和If或IfColor語句結(jié)合,進(jìn)行高級語言的條件判斷
[ElseIf]
格式:If {表達(dá)式}…ElseIf…Else…EndIf
或 IfColor {X坐標(biāo)} {Y坐標(biāo)} {顏色} {判斷條件}…ElseIf…Else…EndIf
解釋:和If或IfColor語句結(jié)合,進(jìn)行高級語言的條件判斷
[EndIf]
格式:If {表達(dá)式}…ElseIf…Else…EndIf
或 IfColor {X坐標(biāo)} {Y坐標(biāo)} {顏色} {判斷條件}…ElseIf…Else…EndIf
解釋:和If或IfColor語句結(jié)合,進(jìn)行高級語言的條件判斷
[While]
格式:While {循環(huán)條件}...EndWhile
解釋:循環(huán)語句--當(dāng)循環(huán)條件成立的時(shí)候,反復(fù)執(zhí)行循環(huán)體
[EndWhile]
格式:While {循環(huán)條件}...EndWhile
解釋:和While一起構(gòu)成循環(huán)語句
[For]
格式:For {循環(huán)次數(shù)}...EndFor
解釋:循環(huán)語句--循環(huán)一定次數(shù)
[EndFor]
格式:For {循環(huán)次數(shù)}...EndFor
解釋:和For一起構(gòu)成循環(huán)語句
[Goto]
格式:Goto {標(biāo)號}
解釋:跳轉(zhuǎn)語句,可以跳轉(zhuǎn)到rem標(biāo)記過的標(biāo)記處繼續(xù)執(zhí)行
其他命令介紹
[Delay]
格式:Delay {延時(shí)}
解釋:腳本暫停執(zhí)行一段時(shí)間.{延時(shí)}里面填寫"毫秒"數(shù)
1秒=1000毫秒, 1分鐘=60000毫秒, 1小時(shí)=3600000毫秒
例子:
Delay 6000
延遲6秒
x = 5000
Delay x
延時(shí)x秒,這里x是5秒
[MessageBox]
格式:MessageBox {文字}
解釋:簡單的彈出一個(gè)窗口,顯示一段文字.
例子:
MessageBox "彈出窗口"
提醒: 按鍵VBS語句中也提供了MessageBox命令,可以支持變量,因此MessageBox命令也可以直接寫成支持變量的方式
x = "提醒窗口"
MessageBox x
[SayString]
格式:SayString {表達(dá)式}
解釋:在當(dāng)前窗口輸入文字
例子:
SayString 你好啊
x = "我很好"
SayString x
[Rem]
格式:Rem {文字}
解釋:標(biāo)記命令.即可當(dāng)注釋,也可以為Goto跳轉(zhuǎn)指令作標(biāo)記
例子:
Rem 腳本開始
[TracePrint]
格式:TracePrint {變量}
解釋:在調(diào)試窗口打印文字,可用于輸出變量的值
例子:
TracePrint x
在調(diào)試窗口輸出變量x的值
[EndScript]
格式:EndScript
解釋:強(qiáng)制結(jié)束腳本的執(zhí)行,在這個(gè)語句之后的所有命令都不會執(zhí)行
[Import]
格式:Import {vbs文件}
或 Import {插件dll文件}
解釋:導(dǎo)入一個(gè)vbs文件或者插件dll文件.當(dāng)文件被導(dǎo)入后,里面的函數(shù)可以直接被調(diào)用,不需要使用VBSCall或Plugin命令
在VBScript塊中需要調(diào)用vbs文件或者插件中的函數(shù)時(shí),必須采用這種方式,不能再冠以VBSCall或Plugin關(guān)鍵字
例子:
Import "stdlib.vbs"
name=InputBox("請輸入您的姓名")
[VBSBegin ... VBSEnd]
格式:VBSBegin...VBSEnd
解釋:構(gòu)成一個(gè)VBScript塊.在VBScript塊中可以使用任何VBScript語句(包括VBScript的條件判斷、子程序調(diào)用等等),也可以使用大多數(shù)的按鍵精靈命令.
[VBS]
格式:VBS {VBScript語句}
解釋:執(zhí)行一個(gè)單行的VBScript語句.在6.0之后的版本VBS關(guān)鍵字可以省略.
注意只支持單行的VBScript語句,不支持多行的VBScript語句如If...EndIf,While...Wend等,需要用按鍵精靈的類似命令代替
[VBSCall]
格式:VBSCall {外部VBScript函數(shù)}.
解釋:執(zhí)行一個(gè)外部VBScript函數(shù).按鍵精靈內(nèi)置了標(biāo)準(zhǔn)庫stdlib.vbs,里面包含了包括顏色查找,圖片查找等有用的功能
[Plugin]
格式:Plugin {插件名}.{插件函數(shù)}
解釋:調(diào)用一個(gè)外部插件提供的函數(shù).我們將逐漸制作多種復(fù)雜功能的插件并隨按鍵精靈最新版本提供.
例子:
Plugin parentH = Window.Foreground()
使用Windows插件獲取當(dāng)前窗口的句柄功能
[UserVar]
用于支持用戶設(shè)置腳本參數(shù)
標(biāo)準(zhǔn)型自定義變量
格式: UserVar {變量}={默認(rèn)值} {注釋}
解釋:這個(gè)命令主要用于用戶自定義的設(shè)置功能
例子:
UserVar var1=30 當(dāng)HP<多少%時(shí),使用紅藥
UserVar var2=30 當(dāng)MP<多少%時(shí),使用藍(lán)藥
當(dāng)用戶使用這個(gè)腳本的時(shí)候,可以對這var1和var2這兩個(gè)變量的取值進(jìn)行設(shè)置
下拉型自定義變量
格式: UserVar 變量=DropList{選項(xiàng)0:值0|選項(xiàng)1:值1|選項(xiàng)2:值2}=默認(rèn)顯示的選項(xiàng)編號 {注釋}
解釋:這個(gè)命令預(yù)先設(shè)定多個(gè)變量值,用戶可在基面通過下拉方式進(jìn)行選擇
例子:
UserVar Var1=DropList{低于10%時(shí)補(bǔ)血:0.1|低于20%時(shí)補(bǔ)血:0.2|低于30%時(shí)補(bǔ)血:0.3}=2 自動補(bǔ)血設(shè)置
特別提醒:默認(rèn)顯示的選項(xiàng)編號從0開始
[PutAttachment]
格式:PutAttachment <路徑:可選> <要釋放的文件:可選>
解釋:把當(dāng)前腳本包含的附件展開到指定的路徑下.<路徑>是指定的相對路徑或者絕對路徑.如果省略<路徑>或者<路徑>為 . ,則默認(rèn)展開到按鍵精靈所在的文件夾中可以指定要釋放的文件,允許使用通配符,如 *.bmp.如果不指定要釋放的文件,則默認(rèn)釋放所有文件.
例子:
PutAttachment c:\ *.bmp
將附件中所有后綴是bmp的文件釋放到c盤
PutAttachment .\plugin *.dll
將附件中所有后綴是dll的文件釋放到當(dāng)前文件夾的plugin目錄下
[//]
注釋命令,如果一行語句的開頭是//,那么這一行語句將被看作是一句注釋.
5.50之后的版本支持按鍵精靈VBS命令介紹
[VBSCall FindCenterColor]
解釋: 這個(gè)功能允許您在屏幕的某個(gè)區(qū)域從中心開始查找指定的顏色,并把找到的坐標(biāo)保存在變量中
格式: VBSCall FindCenterColor(left,top,right,bottom,c,x,y)
在區(qū)域內(nèi)從中心到外圍找顏色為c的點(diǎn),把坐標(biāo)保存在變量x和y中l(wèi)eft,top,right,bottom都是整數(shù)或者整數(shù)型變量,說明了區(qū)域的左,上,右,下界限顏色是類似于"0000FF"的字符串,如果不取變量,別忘了加雙引號如果沒有找到這個(gè)顏色,則x和y的值都被置為-1
例子
VBSCall FindCenterColor(0,0,800,600,"0000FF",x,y)
If x>=0 and y>=0
MoveTo x y
EndIf 在區(qū)域(0,0,800,600)中找紅色("0000FF")的點(diǎn),如果找到,則把鼠標(biāo)移動到這個(gè)點(diǎn)
[VBSCall FindColor]
解釋: 這個(gè)功能允許您在屏幕的某個(gè)區(qū)域從左到右、從上到下的查找指定的顏色,并把找到的坐標(biāo)保存在變量中
格式: VBSCall FindColor(left,top,right,bottom,c,x,y)
在區(qū)域內(nèi)從左到右,從上到下找顏色為c的點(diǎn),把坐標(biāo)保存在變量x和y中l(wèi)eft,top,right,bottom都是整數(shù)或者整數(shù)型變量,說明了區(qū)域的左,上,右,下界限顏色是類似于"0000FF"的字符串,如果不取變量,別忘了加雙引號如果沒有找到這個(gè)顏色,則x和y的值都被置為-1.
例子
VBSCall FindColor(0,0,800,600,"0000FF",x,y)
If x>=0 and y>=0
MoveTo x y
EndIf 在區(qū)域(0,0,800,600)中找紅色("0000FF")的點(diǎn),如果找到,則把鼠標(biāo)移動到這個(gè)點(diǎn)
[VBSCall FindColorEx]
解釋: 這個(gè)功能允許您在屏幕的某個(gè)區(qū)域模糊查找指定的顏色,并把找到的坐標(biāo)保存在變量中
格式: VBSCall FindColorEx(left,top,right,bottom,c,type,similar,x,y)
在區(qū)域內(nèi)找顏色為c的點(diǎn),把坐標(biāo)保存在變量x和y中l(wèi)eft,top,right,bottom都是整數(shù)或者整數(shù)型變量,說明了區(qū)域的左,上,右,下界限顏色是類似于"0000FF"的字符串,如果不取變量,別忘了加雙引號type表示查找方式.0為從上往下,從左往右找;1為從中心往外圍找similar為相似度,取0.3到1之間的小數(shù).數(shù)值越大,對相似度要求越嚴(yán)格.推薦取0.8如果沒有找到這個(gè)顏色,則x和y的值都被置為-1.
例子
VBSCall FindColorEx(0,0,800,600,"0000FF",1,0.8,x,y)
If x>=0 and y>=0
MoveTo x y
EndIf 在區(qū)域(0,0,800,600)中,從中間開始找接近紅色("0000FF")的點(diǎn),如果找到,則把鼠標(biāo)移動到這個(gè)點(diǎn)
[VBSCall FindPic]
解釋: 這個(gè)功能允許您在屏幕的某個(gè)區(qū)域查找指定相似度的圖片,并把找到的坐標(biāo)保存在變量中
格式 VBSCall FindPic(left,top,right,bottom,filename,similar,x,y)
在區(qū)域內(nèi)從左到右,從上到下找文件名為filename的bmp文件,把找到的坐標(biāo)保存在變量x和y中l(wèi)eft,top,right,bottom都是整數(shù)或者整數(shù)型變量,說明了區(qū)域的左,上,右,下界限filename是一個(gè)bmp格式的圖片,需要您自己抓取,最好是24位,把邊緣都設(shè)為單一的顏色similar為相似度,取0.5到1之間的小數(shù).數(shù)值越大,對圖片的相似度要求越嚴(yán)格,速度也越快.推薦取0.9如果沒有找到圖片,則x和y的值都被置為-1推薦使用周圍顏色單一的圖片.
例子
VBSCall FindPic(0,0,1023,767,"1.bmp",0.9,x,y)
If x>=0 and y>=0
MoveTo x y
EndIf 在區(qū)域(0,0,1023,767)中找與文件1.bmp中的圖形比較接近的地方,如果找到,則把鼠標(biāo)移動到這個(gè)地方
6.30版之后,找圖的文件路徑可以直接引用附件中的圖片,不需要釋放.
例子:
VBSCall FindPic(0,0,1023,767,"Attachment:\1.bmp",0.9,x,y)
[VBSCall GetCursorPos]
解釋: 這個(gè)功能允許您得到當(dāng)前鼠標(biāo)所在的位置,并保存在變量中
格式: VBSCall GetCursorPos(x,y)
x和y都是整數(shù)型變量,分別表示當(dāng)前鼠標(biāo)的x和y坐標(biāo)您可以隨便取變量名,不一定是x和y.
例子:
VBSCall GetCursorPos(mx,my) 把當(dāng)前鼠標(biāo)位置的x和y坐標(biāo)放在變量mx和my中
[VBSCall GetPixelColor]
解釋: 這個(gè)功能允許您得到指定位置的點(diǎn)的顏色,并保存在變量中
格式: color=GetPixelColor(x,y)
把坐標(biāo)為(x,y)的點(diǎn)的顏色保存在字符串變量color中x和y是整數(shù)或者整數(shù)型變量
例子:
VBSCall GetCursorPos(x,y)
color=GetPixelColor(x,y)
VBSCall MessageBox(color) 得到當(dāng)前點(diǎn)的顏色,并彈出對話框顯示出來
[VBSCall InputBox]
解釋: 這個(gè)功能可以彈出一個(gè)"輸入"對話框,讓腳本用戶輸入一些文字
格式: x=InputBox(提示用戶的話,比如"請輸入用戶名")
把用戶的輸入內(nèi)容保存在變量x中如果提示用戶的話不是變量,別忘了加雙引號.
例子:
x=InputBox("請輸入用戶名")
MessageBox(x) 讓用戶輸入用戶名,并顯示出來
[VBSCall MessageBox]
解釋: 這個(gè)功能允許您在腳本中彈出一個(gè)對話框,對話框的文字允許是變量
格式: VBSCall MessageBox(對話框中的文字)
如果對話框中的文字不是變量,別忘了加雙引號
例子:
VBSCall MessageBox(CStr(i)) 把變量i的內(nèi)容轉(zhuǎn)換成字符串并顯示出來
[VBSCall ReadMemory]
解釋: 這個(gè)功能允許您得到當(dāng)前活動程序的指定內(nèi)存地址的值,并保存在變量中
格式: VBSCall ReadMemory(十六進(jìn)制整數(shù)表示的內(nèi)存地址,讀取類型,value)
內(nèi)存地址是類似于&H400000的十六進(jìn)制整數(shù),可以用游戲修改工具找到,別忘了在前面加&H表示十六進(jìn)制"讀取類型"可以是0,1或者2,分別表示讀取一個(gè)字節(jié),一個(gè)整數(shù)或一個(gè)長整數(shù)讀到的值存放在長整型變量value中
例子:
VBSCall ReadMemory(&h400000,2,val)
MessageBox(CStr(val)) 從內(nèi)存地址400000中讀取一個(gè)長整數(shù),并顯示出來
[VBSCall RunApp]
解釋: 利用這個(gè)功能,您可以很方便的啟動一個(gè)本地的程序,或者打開一個(gè)文件
格式: VBSCall RunApp(要運(yùn)行的程序或者文件)
如果程序路徑不是變量,別忘了加雙引號
例子:
VBSCall RunApp("notepad.exe") 啟動Windows記事本程序
[VBSCall GetCursorShape]
解釋: 這個(gè)函數(shù)得到當(dāng)前鼠標(biāo)的形狀特征(用一個(gè)整數(shù)表示,對這個(gè)整數(shù)進(jìn)行比較,相當(dāng)于對鼠標(biāo)形狀進(jìn)行比較)
格式: shape=GetCursorShape(保留值,目前請用0)
例子:
VBSCall shape=GetCursorShape(0)
If shape=old_shape
VBSCall MessageBox(shape)
EndIf
得到當(dāng)前鼠標(biāo)的形狀,并和以前獲得的鼠標(biāo)形狀old_shape進(jìn)行比較rem
注:下面的VBS函數(shù)僅僅是為了保持兼容性而保留,不推薦使用!
[VBSCall Delay]
VBSCall Delay(iMilliSecond)
解釋: 這個(gè)函數(shù)可以延時(shí),單位是毫秒,支持表達(dá)式
提示: 按鍵精靈自帶的Delay命令已經(jīng)支持表達(dá)式,因此不推薦使用VBSCall Delay命令,此命令保留僅為了兼容以前的腳本.
[VBSCall SayString]
解釋: 這個(gè)函數(shù)用來輸入文本,支持變量.
格式: VBSCall SayString(Prompt)
提示: 按鍵精靈自帶的SayString命令已經(jīng)支持表達(dá)式,因此不推薦使用VBSCall SayString命令,此命令保留僅為了兼容以前的腳本.
[VBSCall SetCursorPos]
解釋: 設(shè)置鼠標(biāo)當(dāng)前的位置
格式: VBSCall SetCursorPos(CursorX,CursorY)
提示: 按鍵精靈自帶的MoveTo命令已經(jīng)支持變量,因此不推薦使用VBSCall SetCursorPos命令,此命令保留僅為了兼容以前的腳本.
[VBSCall GetScreenResolution]
解釋: 這個(gè)功能允許您得到當(dāng)前屏幕分辨率,并保存在變量中
格式: VBSCall GetScreenResolution(cx,cy)
cx和cy都是整數(shù)型變量,分別表示當(dāng)前分辨率的寬和高
例子:
VBSCall GetScreenResolution(cx,cy) 把當(dāng)前屏幕分辨率的寬和高分別放在變量cx和cy中
提示: 您也可以使用Windows插件中的獲取屏幕分辨率的功能.
以上內(nèi)容便是按鍵精靈腳本代碼大全與后臺命令的使用方法,用戶可以對照案例來操作需要調(diào)整的腳本.