2016-12-09 12 views
-1

押された最後の2個のキーを無視するスクリプト(ahk)の作成方法を知りたいのであれば、非常に感謝します。AHK - 10個のキーのセットから最後に押された2個のキーを無視する方法

例えば、私たちは10個の鍵のセットとしてA、B、C、D、E、F、G、H、I、Jを持っています。

私はスクリプトは次のように行動したい:スクリプトの開始時に :

-say key A is pressed - send custom action 
-say key B is pressed - send custom action 

-say Key A is pressed - send A 
-say key B is pressed - send B 

-say key C is pressed - send custom action 
-say Key C is pressed - send C 
-say Key B is pressed - send B 
-say key A is pressed - send custom action again as the script would need to now ignore keys C and B (this is the part that im struggling with) 

私はエラーレベルを使用してループにし、GetKeyStateが、運とA_PriorHotkeyを使用してみましたが...

どんな助力もありがとうございます。

ありがとうございます。

答えて

0

これは理解するのがかなり難しい質問でしたが、 ですが、もう一度質問するのはかなり難しい質問でした。 私はそれがコードに非常に興味深い挑戦だった 、私は正しい解決策を持っている、または多かれ少なかれ正しいと信じています。 うわー、なぜこのようなスクリプトが必要ですか?少し説明してください。 私は今、知りたいと思っています。

$a:: 
$b:: 
$c:: 
$d:: 
$e:: 
$f:: 
$g:: 
$h:: 
$i:: 
$j:: 
vLetter := SubStr(A_ThisHotkey, 1-1) 
vLast2 := SubStr(vLog, 1-2) 
if InStr(vLast2, vLetter) 
SendInput %vLetter% 
else 
MyFunc(vLetter), vLog .= vLetter 
Return 

MyFunc(vLetter) 
{ 
StringUpper, vLetter, vLetter 
SendInput %vLetter% 
Return 
} 
関連する問題