作者VElysian (家瑀 致中和)
看板EzHotKey
標題Re: [AHK-] 請問要怎麼重覆執行某一段指令?
時間Wed Aug 6 18:01:24 2008
可以利用 GetKeyState 偵測按鍵是否按住或放開,然後控制 Loop 跳出唷~~
#Q:: ;按下 Win+Q 執行 至 return 為止的動作
Loop ; Loop 會重複不斷執行 {...} 中間的動作
{
GetKeyState, state , F2
if state = D
;代表 F2 被按住不放
{
MsgBox, F2 已按下,離開程式。
break ;離開 Loop {...}
}
MouseMove, 10,10,50, R
;滑鼠向右下移動 10 個畫素
Sleep, 1000
;延遲一秒
}
return
══════════════════════════════
GetKeyState, 變數, 按鍵名稱。
變數: 存放按鍵狀態,按鍵按下則內容是 D,放開內容是 U
按鍵名稱: 變數名稱,例如 F1、Down、NumpadAdd
詳見
http://www.autohotkey.com/docs/KeyList.htm
如果有其它功能,在 MiouseMove 那邊修改就行了喔~~
寫完了,希望對你有幫助。 ^_^
※ 引述《xliu (一棵小樹)》之銘言:
: 抱歉,看了板主寫的 runcount loop 還是不太懂?
: 我想重覆執行下面這一段動作,不知該怎麼寫呢?
: 我是想讓它只要偵測到 Decryption 這個視窗
: 就自動送出 test ,然後按 enter。
: 因為我要每天打開數個解壓縮檔
: 那個 Decryption 視窗就是解壓縮要輸入密碼的畫面
: 但如果下面這樣寫的話,只能做一次而已,按 enter 後它會解出一個檔案
: 但當我繼續按下一個檔案時,它就不會自動輸入 test 了
: 就停住了。
: 不知道這問題會不會太簡單 = =
: 有解答後我自砍 -_- 謝謝
: WinWait, Decryption,
: IfWinNotActive, Decryption, , WinActivate, Decryption,
: WinWaitActive, Decryption,
: Sleep, 100
: Send, {CTRLDOWN}{CTRLUP}test{ENTER}
--
戰略高手 遊戲, 數位, 程設 [jzs/lostname
DigitalWare 軟體 Σ軟體 應用 技巧 [lostname]
EzHotKey 軟體 ◎簡化複雜工作的快速鍵軟體 VElysian
EzHotKey 主要討論一種可以把複雜的滑鼠鍵盤動作變成簡單的快速鍵的軟體。
例如:
重複的剪下貼上,或是將滑鼠調整音量的動作簡化成只按 +/- 鍵。
包括:
AutoHotKey、AutoIt、EZScript、VBScript、Windows 批次檔。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.64.172.209
※ 編輯: VElysian 來自: 61.64.172.209 (08/06 18:04)
1F:推 bohun:有學有推^^ 08/06 19:12
2F:→ xliu:真是太感謝板主了,每一篇教學都如此詳盡 Orz 08/06 19:50
3F:→ n0tme:這種方法會遇到跟我一樣的問題,按F2鈕無法立即break 08/07 11:55
4F:→ n0tme:以loop 裡面 sleep 1秒來說,按下F2 大約1秒才有作用 08/07 11:56
6F:推 hoseela0301: . _ . / 08/11 03:55
7F:→ hoseela0301: . _ . / 08/11 03:55