web-dev-qa-db-ja.com

AHK —同じホットキーの代替キーを中断する方法は?

ホットキーを押すたびに手紙が送られるというコードがあります。

Q、Q、Q、Q、Qを押すと、それぞれ「a」、「b」、「c」、「d」、「e」が送信されます。その後、ループが再開します。

例:Qを13回押すと、「abcdeabcdeabc」が送信されます。

私の質問は:

Qを数秒間押さない場合、ループをリセットして最初の文字( "a")に戻るにはどうすればよいですか?

私のコード:

q::
Send, % ["a","b","c","d","e"][(count >= 5 || !count)? count := 1 : ++count]
return
1
rdllngr

私は自分で解決策を見つけました。これが将来誰かに役立つことを願っています。

幸運を。 :)

q::
Send, % ["a","b","c","d","e"][A_TimeSincePriorHotkey>2500 || A_PriorHotkey<>A_ThisHotkey || (count >= 5 || !count) ? count := 1 : ++count]
return
2
rdllngr