2017-06-14 2 views
2

versucht, eine toggle-fähige Schleife zu machen, scheint überhaupt keine e zu senden, bitte helfen?AHK, funktioniert nicht wie erwartet

myvar := false 
k:: 
myvar := true ? false : true 
return 
while (myvar) 
{ 
Send, e 
Sleep 100 
} 
+0

klar sein, ich die behavoir zu schaffen versuchte; tu nichts, k wird gedrückt, sende wiederholt e, bis k erneut gedrückt wird. –

+0

Überprüfen Sie Ihren Betreiber. –

+0

siehe unten bearbeiten. – ChickenFeet

Antwort

-1

Sie können einen weiteren Schlüssel zum Anhalten/Fortsetzen zuweisen. In diesem Fall wird k umgeschaltet und F12 wird unbegrenzt laufen (benutzen Sie einfach k zum Umschalten).

k:: 
Hotkey, F12, toggle 
return 

F12:: 
while(true) 
{ 
    Send, e 
    Sleep 100 
} 

könnte auch versuchen, Loop statt while(true)

k:: 
pause, toggle 

F12:: 
Loop, 
{ 
    Send e 
    Sleep, 100 
} 
return 

von AutoHotkey forum verwiesen.

1

Hier ist mein Vorschlag:

k::SetTimer, SendLetterE, % (Toggle:=!Toggle) ? 100 : "Off" 

SendLetterE() { 
    Send, e 
} 
+0

Viel besser als die ausgewählte Antwort. Dies sollte definitiv die akzeptierte Antwort sein. Das ist sauber und in 4 Zeilen gemacht. Der andere ist ein wenig schlampiger, verwendet unnötige Befehle, verwendet 2 Hotkeys und eine Antwort schlägt vor, "Pause" als Start/Stopp zu verwenden. Nicht die beste Wahl. : - / – GroggyOtter