LabVIEWForum.de
Welche Eigenschaft? - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Welche Eigenschaft? (/Thread-Welche-Eigenschaft)

Seiten: 1 2


Welche Eigenschaft? - Zacharias - 13.06.2006 16:15

Hallo alle zusammen,
auch ich muss Eventstruckturen verwenden und habe keine Ahnung davon wie ich sie verwenden soll und was sie eigentlich alles können.
Meine Aufgabe ist es, unter anderem, ein Userinterface zuschreiben, das seine Buttons je nach dem welche gedrückt wurden acktiv schaltet oder Passiv lässt.
Jeder dieser Buttons Soll natürlich ein Event auslösen das abgefangen werden soll.
Die Frage ist jetzt kann man diese Schleifen in einander verschachteln ohne das es zu Problemen kommt auch wenn diese dieselben Events abfragen.
Und wie kann man Buttons deacktivieren und wieder acktivieren?


Ich währe über jeden tipp dankbar.
Grüße Zacharias


Welche Eigenschaft? - s200rs - 13.06.2006 16:39

' schrieb:Ich habe leider nur die Evaluierungsversion und da sind leider nicht einige Funktionen vetreten.

Hallo faqui,

Wenn Du keine Eventstruktur nutzen kannst, kannst Du, falls es nicht zu aufwendig ist und in Deinen Algorithmus paßt, eine While-Schleife reinbalsteln.
Die Bedienelemente, die bei Betätigung eine Aktion auslösen sollen, bündelst Du alle zu einem Cluster.
Den Wert dieses Clusters übergibst Du dann an eine Sequenz-Variable.

Im nächsten Schleifendurchlauf vergleichst Du das Cluster mit der Sequenz-Variable.
Wenn ein Element betätigt wurde, hat das gesamte Cluster nun einen anderen Wert, als die Sequenz-Variable. Mit einer Case-Struktur kannst Du dann die gewünschte Aktion ausführen.
Der aktuelle Cluster-Wert wird nun zum Vergleichswert für den nächsten Schleifendurchlauf und der Vorgang beginnt erneut.
Wenn Du nun noch das einen Warte-Schritt mit 50 bis 100ms in die Schleife einfügst, geht die Rechenleistung auch nicht ganz so in die Höhe.

Durch das bündeln der Werte zum Cluster mußt Du nicht den Wert jedes Elementes im nächsten Durchlauf vergleichen. Es ist einfacher und übersichtlicher.

P.S.: um einer eventuellen Frage vorzubeugen: die Sequenzvariable erstellt man durch Rechtsklick auf den Rand einer For- bzw. While-Schleife -> Sequenzvariable erstellen, zum rechten Rand kommt der aktuelle Wert, vom linken liest man den Wert des vorherigen Schleifendurchlaufs

MfG s200rs


Welche Eigenschaft? - eg - 13.06.2006 16:51

@s200rs,
richtig, so war das bei LV becor es Event-Struktures gab.

@faqui,
Siehe Bild

Gruss, Eugen


Welche Eigenschaft? - faqui - 14.06.2006 09:14

' schrieb:Hallo faqui,

Wenn Du keine Eventstruktur nutzen kannst, kannst Du, falls es nicht zu aufwendig ist und in Deinen Algorithmus paßt, eine While-Schleife reinbalsteln.
Die Bedienelemente, die bei Betätigung eine Aktion auslösen sollen, bündelst Du alle zu einem Cluster.
Den Wert dieses Clusters übergibst Du dann an eine Sequenz-Variable.

Im nächsten Schleifendurchlauf vergleichst Du das Cluster mit der Sequenz-Variable.
Wenn ein Element betätigt wurde, hat das gesamte Cluster nun einen anderen Wert, als die Sequenz-Variable. Mit einer Case-Struktur kannst Du dann die gewünschte Aktion ausführen.
Der aktuelle Cluster-Wert wird nun zum Vergleichswert für den nächsten Schleifendurchlauf und der Vorgang beginnt erneut.
Wenn Du nun noch das einen Warte-Schritt mit 50 bis 100ms in die Schleife einfügst, geht die Rechenleistung auch nicht ganz so in die Höhe.

Durch das bündeln der Werte zum Cluster mußt Du nicht den Wert jedes Elementes im nächsten Durchlauf vergleichen. Es ist einfacher und übersichtlicher.

P.S.: um einer eventuellen Frage vorzubeugen: die Sequenzvariable erstellt man durch Rechtsklick auf den Rand einer For- bzw. While-Schleife -> Sequenzvariable erstellen, zum rechten Rand kommt der aktuelle Wert, vom linken liest man den Wert des vorherigen Schleifendurchlaufs

MfG s200rs

Hi,
danke für deinen Vorschlag, aber ich möchte in diesen Fall keine Cluster benutzen, da ich meine Gesamte Bibliothek und Oberfläche durcheinander bringe würde und teilweise umändern müsste.
Aber falls ich keine andere Möglichkeit finde komme ich gerne auf deinen Vorschlag zurück.

Gruß