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!
ich hänge gerade an einem scheinbar einfachen Problem. Ich habe eine Ereignisstruktur, die verschiedene Fälle auswählt. In einem Fall möchte ich wiederum eine Ereignisstruktur einbinden. Leider reagiert diese dann auf keine Eingabe mehr.
Im Anhang habe ich ein (sehr vereinfachtes) Beispiel zu diesem Problem (LV 8.6).
Kann man Ereignisstrukturen prinzipiell nicht verschachteln? Oder gibt es da einen Trick?
mehrere Ereignisstrukturen sollte man wenn, dann nur verwenden, sofern diese nicht gleichzeitig laufen. Was du da versuchst, ist sicher schlecht und so etwas habe ich auch noch nie gesehen. Code, der länger in der Ausführung braucht, sollte auch nicht in eine Ereignisstruktur.
Da bieten sich Melder, Queues o.ä. eher an. Die Ereignisstruktur setzt diese und außerhalb kannst du darauf reagieren und zeitintensive Dinge durchführen.
Was möchtest du denn erreichen?
Das geht garantiert schöner und vermutlich auch mit einer einzigen Ereignisstruktur und ohne Melder/Queues.
Vielleicht kannst du das mit einem Schieberegister lösen, aber ich weiß noch nicht genau, was du erreichen möchtest.
Grüße
25.08.2010, 12:47 (Dieser Beitrag wurde zuletzt bearbeitet: 25.08.2010 12:55 von jg.)
' schrieb:Kann man Ereignisstrukturen prinzipiell nicht verschachteln?
Man kann es prinzipiell schon, zu empfehlen ist es auf gar keinen Fall. Lies dir einmal die Hinweise zur Verwendung der Ereignisstruktur in der LabVIEW-Hilfe durch. U.a. steht da sinngemäß: nicht mehr als eine Ereignis-Struktur pro Schleife. In der Programmierpraxis kann man das verschärfen zu "Nicht mehr als eine Ereignisstruktur pro VI". Alles andere führt in der Regel immer zu Problemen und Ärger, s. deine Frage...
Gruß, Jens
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!
Die genannte Regel a) "nicht mehrere Ereignisstrukturen (und schon gar nicht ineinander verschachtelte)" ist eine Empfehlung, und die ist es hier vermutlich nicht, die Dir das Genick bricht. Wichtiger noch sind 2 weitere Regeln:
b) nicht mehrere Mal dasselbe Ereignis in verschiedenen Ereignisstrukturen behandeln
c) in einem Ereigniscase nichts machen, was ewig + 1 Tag dauert.
' schrieb:Das war nur für das einfache Beispiel. Im anderen Programm war nichts doppelt dabei.
@Tschac: ja warum hast Du auch nur Deine Glaskugel nicht benutzt? Dann hättest Du das vorher schon gewußt und den Beitrag vor dem Posten als Überflüssig erkannt.