作者JediDotOrg (Jedi.org)
站內EzHotKey
標題Re: [AHK-] 想利用CapsLock鍵來當AutoHotKey的開關
時間Wed Aug 11 15:37:40 2010
接著講 hotkey 的部份。
※ 引述《i745a (失敗的麵)》之銘言:
: 小弟我最近由於玩電腦遊戲的關係
: 想把鍵盤上某些按鍵對應到Number Pad那一區
: 而且還想讓CapsLock在on的模式時,我寫的功能可以啟動
: CapsLock在off模式時,該功能能夠關閉
: 2::
: Send {Numpad7}
: return
: 4::
: Send {Numpad4}
: return
: a::
: Send {Numpad1}
: return
hotkey 在 AutoHotkey 裡面的處理方式是這樣的:
任何時候你按下 2 按鍵,就一定會跳到 2:: 那邊開始做事,
不會去檢查他是不是在別的東西裡面,
所以你不能把這些指令丟進 if 裡面來做條件處理,
而是必須把條件處理寫在 hotkey 裡面,像是這樣:
2::
GetKeyState, capState, CapsLock, T
if (capState = "D") {
Send {Numpad7}
}
return
4::
GetKeyState, capState, CapsLock, T
if (capState = "D") {
Send {Numpad4}
}
return
a::
GetKeyState, capState, CapsLock, T
if (capState = "D") {
Send {Numpad1}
}
return
你可能會問,可不可以把 GetKeyState 拿到外面呢?
不行,否則你的腳本就只會在剛執行的時候判斷 CapsLock 的狀態,
而無法在你每次按下按鍵的時候判斷。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.126.224.29
※ 編輯: JediDotOrg 來自: 59.126.224.29 (08/11 15:47)