Timer beenden
Verfasst: 1. Mai 2021 16:02
Hallo zusammen,
ich wollte gerne, in Abhängigkeit von der länge eines Tastendrucks, unterschiedliche Kommandos ausführen.
Deswegen wollte ich eine Rule verwenden um einen langen Tastendrucks zu erkennen:
Log bei langen Tastendruck:
Taste gedrückt
Log: Timer Start
Log: Timer Ende
Taste nach 1s logelassen
Log: Timer Abbruch gewünscht
Log bei kurzen Tastendruck
Taste gedrückt
Log: Timer Start
Taste nach 500ms logelassen
Log: Timer Abbruch gewünscht
Log: Timer Ende
Entsprechend wollte ich in der Else Schleife den Timer zurücksetzen. Leider habe ich dies bisher nicht gschafft.
Versucht habe ich es mit:
ich wollte gerne, in Abhängigkeit von der länge eines Tastendrucks, unterschiedliche Kommandos ausführen.
Deswegen wollte ich eine Rule verwenden um einen langen Tastendrucks zu erkennen:
Code: Alles auswählen
rule "LongPress"
when
Item CMD_up changed or Item CMD_down changed
then
var Timer LongPressUp = null
if(CMD_up.state == OPEN)
{
logInfo("Timer", "Timer Start")
LongPressUp = createTimer(now.plusNanos(750000000)) [|
logInfo("Timer", "Timer Ende")
]
}
else
{
logInfo("Timer", "Timer Abbruch gewünscht")
}
end
Taste gedrückt
Log: Timer Start
Log: Timer Ende
Taste nach 1s logelassen
Log: Timer Abbruch gewünscht
Log bei kurzen Tastendruck
Taste gedrückt
Log: Timer Start
Taste nach 500ms logelassen
Log: Timer Abbruch gewünscht
Log: Timer Ende
Entsprechend wollte ich in der Else Schleife den Timer zurücksetzen. Leider habe ich dies bisher nicht gschafft.
Versucht habe ich es mit:
Code: Alles auswählen
else
{
logInfo("Timer", "Timer Abbruch gewünscht")
LongPressUp.cancel()
LongPressUp = null
}