Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
Hi alle zusammen ich hab zur zeit ein kleines Problem und zwar hab ich folgendes stück Code in LabVIEW (Siehe Bild)
diese Funktioniert auch wunderbar solange ich die Änderung des Zykluses über das Frontpanel mache wird jedoch der Inhalt/wert von Zyklus von meinem Programm geändert, so wird die Ereignisstruktur nicht ausgeführt. Nur wenn ich im Frontpanel den Wert manuell via Mausklick ändere..
Wie kann ich es schaffen das das ereigniss immer ausgeführt wird sobald sich er Wert in Zyklus ändert..
eine Variablenänderung durch dein Programm heraus (also nicht im Frontpanel) wird nur dann als Event für die Eventstruktur erkannt, wenn du diese per "Eigenschaftsknoten->Value (Signaling)" änderst. Wenn du nur in eine lokale Variable oder bei einem Indikator den Wert änderst, wird kein Event ausgelöst.
MfG, Jens</div>
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
um Ereignisse programmatisch zu erzeugen gibts die Benutzerereignisse.
Gruß,
Marko
Das stimmt, aber dann muss er seinen Quellcode doppelt(in zwei Ereignissen) schreiben. Ein Ereignis wäre "Werteänderung durch den Benutzer", das zweite "Benutzerdefinierter Ereignis", den du meinst.
' schrieb:Das stimmt, aber dann muss er seinen Quellcode doppelt(in zwei Ereignissen) schreiben. Ein Ereignis wäre "Werteänderung durch den Benutzer", das zweite "Benutzerdefinierter Ereignis", den du meinst.
Gruss
Hallo Eugen,
er lässt einfach seinen Quellcode von zwei Ereignissen starten, dazu braucht er diesen nicht zweimal zu erstellen. Ist im Grunde wie mit dem Property Node (Value (Signaling)) ,wie von Jens vorgeschlagen, nur daß ich es immer möglichst vermeide Property Nodes zu verwenden.
<div align="left">Ich sage was andere schon gesagt haben mit anderen Worten:
Um das gewünschte Verhalten zu erzeugen, ist eine winzig kleine Veränderung in Deinem Programm erforderlich:
Jetziger Zustand: Du gibst, wenn Du den Wert "Zyklus" programmgesteuert veränderst, den neuen Wert in eine Lokale Variable oder in den Eigenschaftnoten Zyklus-->Wert ein. Das ist auf dem Bild zwar nicht zu sehen, aber es kann ja nicht anders sein.
Notwendige Änderung: Die lokale Variable "Zyklus" bzw. der Eigenschaftknote "Zyklus-->Wert" wird ersetzt durch den Eigenschaftsknoten Zyklus -->"Wert, signalisierend". Das ist alles.
Natürlich wird das Ereignis dann auch dann ausgelöst, wenn der neue Wert gleich dem alten ist. Das ist aber wohl bei einem Bedienereignis auch nicht anders. Wenn Du dort herumspielt und dann doch den alten Wert belässt, wird - glaube ich - auch ein Ereignis ausgelöst.</div>
Ja danke euch allen das mit dem Wert signalisierend haut auch so alles ganz gut hin..
jetzt möchte ich allerdings noch das ein Ereigniss nur dann ausgelöst wird wenn sich zb eine Boolsche variable von high auf low ändert also nur bei eine fallenden Flanke sozusagen
wie löse ich das am besten kann mir da vielleicht noch jemand helfen?