Re: Regel/Skript - Wert eines Items
Verfasst: 16. Apr 2023 03:47
Bist Du sicher, dass dieser Weg einfacher ist, als einmal alle Sender abzutippen?
Aber egal... Zeig doch bitte mal eine konkrete Taste (ausnahmsweise gerne auch als Bild).
Mein Hauptproblem: eine Schaltfläche (vor allem deren Beschriftung) wird gewöhnlich nicht so ohne weiteres dynamisch gefüllt. Das genaue Gegenteil ist der Fall, wenn die Schaltfläche betätigt wird, wird das zugehörige Item mit dem festgelegten Wert der Taste gefüllt
Wobei das vielleicht schon der Schlüssel ist - wir verhindern, dass der unter der Taste hinterlegte Wert in den Status geschrieben wird, indem wir autoupdate=false setzen, für jedes der beteiligten Items.
Weiterhin packst Du alle Items in eine Gruppe, nennen wir die Gruppe ruhig gChEnigma
Dann kannst Du eine Rule so schreiben:
Die Rule bekommt das Kommando mit, wertet dieses aber gar nicht aus. Stattdessen holt es den Status des Items, welches das Kommando geschickt hat. Mit autoupdate=false darf das gesendete Kommando nicht im Status des Items landen.
Anschließend wird der ermittelte Wert einfach an das Item gesendet, welches den Channel umschaltet.
Das ist aber nur Theorie, unter der Annahme, dass ich verstanden habe, was Du getan hast.
Aber egal... Zeig doch bitte mal eine konkrete Taste (ausnahmsweise gerne auch als Bild).
Mein Hauptproblem: eine Schaltfläche (vor allem deren Beschriftung) wird gewöhnlich nicht so ohne weiteres dynamisch gefüllt. Das genaue Gegenteil ist der Fall, wenn die Schaltfläche betätigt wird, wird das zugehörige Item mit dem festgelegten Wert der Taste gefüllt
Wobei das vielleicht schon der Schlüssel ist - wir verhindern, dass der unter der Taste hinterlegte Wert in den Status geschrieben wird, indem wir autoupdate=false setzen, für jedes der beteiligten Items.
Weiterhin packst Du alle Items in eine Gruppe, nennen wir die Gruppe ruhig gChEnigma
Dann kannst Du eine Rule so schreiben:
Code: Alles auswählen
rule "reagiere auf Channel Tasten"
when
Member of gChEnigma received command // Ein Tastendruck generiert ein Kommando
then
val prog = triggeringItem.state.toString
EnigmaChannel.sendCommand(prog)
end
Anschließend wird der ermittelte Wert einfach an das Item gesendet, welches den Channel umschaltet.
Das ist aber nur Theorie, unter der Annahme, dass ich verstanden habe, was Du getan hast.