Frage von eddiepoole, 29

Wer findet den Fehler im Autohotkey-Skript?

Eigntlich ein profanes Problem, aber ich scheine was zu übersehen. Ich will nichts weiter, als einen Umschalt-Mechanismus bauen, der nach 2 Sekunden wieder in den Ausgangszustand zurückkehrt.

Konkret: Ein Druck auf die ESC-Taste soll die Funktion der Numpad0-Taste für zwei Sekunden lang verändern. Falls also binnen zwei Sekunden Numpad0 gedrückt wird, soll nicht 0 sondern 99 ausgegeben werden. Aber irgendwie kommt immer nur eine 0.

esc::
Startzeit := A_TickCount
if fn=1
{
fn:=0
}
else
{
fn:=1
}
return


Numpad0::
Jetztzeit := A_TickCount
DiffZeit  := Jetztzeit - Startzeit
if fn=1 and DiffZeit < 2000
{
send 99
}
else
{
send 0
}
return

Das mit dem & lt; könnt ihr euch sicher denken. Das soll der Vergleichs-Operator (öffnende Spitzklammer) sein. Das wird vom Gutefrage-Editor vorsorglich unschädlich gemacht.

Antwort
von Jeserig, 17

Versuch mal den Ausdruck if( fn=1 and DiffZeit < 2000 ) in Klammern zu setzen. Vielleicht nützt Dir ein fn:=0 vor dem letzten return etwas.

Kommentar von eddiepoole ,

Danke, die Klammer wars.

Antwort
von xXSlayerHDXx, 3

Hey adde mich doch mal auf Skype: mofebehe

Ich kann dir jede Art von Skript / Bot / Programm programmieren und dir wenn du willst danach auch noch erklären wie alles funktioniert.

Würde mich auch über eine kleine "Aufwandsentschädigung" nicht beschweren :D

Keine passende Antwort gefunden?

Fragen Sie die Community