2

ボタンを 1 回押すだけでオンとオフを切り替えることができるキーバインドのグループを設定しようとしていますが、どこにも例が見つかりません。

^NumpadSub を押したときに、^NumpadSub がこれらの異なるキーバインドを切り替えてオンとオフを切り替えられるようにします。

q::w
z::s
w::up
s::down

そのためのコードの設定方法について誰か助けてもらえますか?

4

1 に答える 1

4

これらが唯一のものである場合、ホットキーをもう 1 つ追加できます。

^NumpadSub::Suspend

これにより、すべてのホットキーがサスペンドされます (サスペンドのオン/オフの切り替えに使用されるものを除く)。

それ以外の場合は、ホットキーのオン/オフを切り替えることができる実際のホットキー機能 ( http://www.autohotkey.com/docs/commands/Hotkey.htm ) を使用する必要がありますが、ホットキー機能はラベルを参照します: (アドレス)。

1 つの特定のアプリケーション (ゲーム) を使用するときにのみこれらのキーを特定の方法で動作させたい場合は、#IfWinActive コマンドを使用できます。

例えば

SetTitleMatchMode, 2
#IfWinActive, Notepad ; Start of Notepad specific keys.
a::Send, Haha
b::SoundBeep, 500, 500
#IfWinActive ; End of Notepad specific keys.

そのような状況では、これがあなたのために働くかどうかをチェックしてください! q と z を押すと w と s の実行がトリガーされるため、w と s の前に $ 記号を追加しました。

Hotkey, q , MyQ, On
Hotkey, z , MyZ, On
Hotkey, $w , MyW, On
Hotkey, $s , MyS, On
Return

^NumpadSub::
KeyToggle:=!KeyToggle
Hotkey, q , % (KeyToggle ? "Off": "On")
Hotkey, z , % (KeyToggle ? "Off": "On")
Hotkey, $w , % (KeyToggle ? "Off": "On")
Hotkey, $s , % (KeyToggle ? "Off": "On")
Return

MyQ:
SendInput, w
Return

MyZ:
SendInput, s
Return

MyW:
SendInput, {Up}
Return

MyS:
SendInput, {Down}
Return
于 2013-05-01T09:45:41.247 に答える