route127の日記: Autohotkey連打書き方流儀
日記 by
route127
最近ahkでalt押しながら同じキー2連打で発火する動作を書きたくなったが書き方が思い出せなくて検索したらKeywaitを使う方法の紹介に辿り着いた。
!e::
Keywait, e, U
Keywait, e, D T0.2
If(ErrorLevel=0)
{
}
Return
ひとまずそれで動くものが出来たのでその場は収まったのだが、以前書いた時は別の書き方した気がして古いスクリプト見てたら果たしてA_PriorHotKeyとA_ThisHotKeyを比較する方法を使っていた。
~e::
IF(A_PriorHotKey == A_ThisHotKey and A_TimeSincePriorHotkey < 200)
{
}
Return
先のKeywaitを用いる方法より簡単に書ける気がするが、修飾キーが付くとさっきまで必要なかったInputが出てくる。
~!e::
Input, inputKey, I L1 T0.2, !e
IfInString, ErrorLevel, EndKey:
{
}
Return
修飾キーの有無に関わらず同じ書き方ができる点で先のKeyWaitを使った書き方の方が覚えることが少なく済む気がした。
Autohotkey連打書き方流儀 More ログイン