
AutoHotKey (AHK) では、スクリプトに条件を付けたいと考えていました。
Caps LockがOFFの場合は何も起こりませんが、ONの場合はスクリプトが実行され、もちろん変更が検出されます。
これが私の試みですが、うまくいきません。Caps Lock をオンまたはオフにしてスクリプトを実行できるようにします。
#Requires AutoHotKey v2.0
state := GetKeyState("CapsLock", "T")
if(state = 1)
{
LAlt & i::Send "{Up}"
}
答え1
カスタムの組み合わせ言う:
注:標準の修飾キーとの組み合わせ通常は、標準構文を使用するたとえば、<+s::LShift & s:: ではなく。
この場合:
#Requires AutoHotKey v2.0
; LAlt + I
<!i::Send "{Up}"
<!左 Alt キーの記号です。
にホットキーやホットストリングを状況に応じて変更する、 使用#ホットイフ指令:
#Requires AutoHotkey v2.0
#HotIf GetKeyState("CapsLock", "T")
<!i::Send "{Up}"
<!k::Send "{Down}"
#HotIf ; turn off context sensitivity
答え2
#必要 AutoHotKey のバージョンのみをチェックします。
次のようなコードを使用します:
GetKeyState, CapLck, CapsLock, T
if ( CapLck == "D" ) { ; check key-down condition
some statement
}