LabVIEW Traverse for GObjects (VI Scripting)

Es gibt eine versteckte Funktion in der VI Scripting Palette, die man zum Beispiel nutzen kann, um sehr elegant und einfach alle Element Referenzen eines Front Panels ermitteln zu können.

Um dies nutzen zu können, müssen wir zuerst die versteckte VI Scripting Palette aktivieren und einblenden. Dazu wählt ihr in eurer LabVIEW Entwicklungsumgebung den Menüpunkt Tools > Options > VI Server > und aktiviert hier beide Optionen im Bereich VI Scripting.

Nach dem Aktivieren dieser Optionen solltet ihr in eurer LabVIEW Entwicklungsumgebung folgende Palette sehen. Erstellt ein neues leeres VI. Rechtsklick im Block Diagramm. Die VI Scripting Palette findet ihr unter > Application Control > VI Scripting …

Mit VI Scripting könnt ihr generell alle Aufgaben in LabVIEW automatisieren. Siehe Post https://kreiseder.org/2022/03/labview-quick-drop-shortcuts-vi-scripting. Heute widmen wir uns jedoch nur einer speziellen Funktion. Traverse for GObjects.vi , ein VI mit dem wir programmatisch z.B. alle Element Referenzen eines Front Panels auslesen können.

Mit Traverse Target können wir z.B. als Filter (FP) nur Referenzen des Front Panels ermitteln. Als weiteren Eingang benötigen wir eine Referenz des VI´s von dem wir Element Referenzen des Front Panels ermitteln wollen (typischerweise das VI mit unserem Haupt Front Panel). Weiters können wir mit dem Input Class Name sehr einfach unsere Element Refenzen filtern.

Ein praktischer Anwendungsfall könnte sein, dass wir programmatisch bei Programmstart eine Map erstellen wollen, welche alle Element Referenzen unseres Haupt Front Panels enthält. Organisiert als Key / Value pair, z.B. Label Text / Element Referenz. Diese Map können wir in unseren Haupt Cluster mit aufnehmen. Somit haben wir jederzeit die Möglichkeit bestimmte Referenzen per Name aus der Map auszulesen.

Mehr dazu in diesen beiden Posts:

Diese und viele weitere Tricks lernt ihr in unseren Schulungen und Consultings. Link zu den Terminen


Link zum Beispielprojekt:
Die Programm Beispiele stellen nur einen Ausschnitt einer Gesamtapplikation dar. Verwendung der Code Beispiele auf eigene Gefahr.

Unsere Website enthält Links zu externen Websites, auf deren Inhalt wir keinen Einfluss haben. Aus diesem Grund übernehmen wir keine Gewähr für die Richtigkeit, Vollständigkeit und Aktualität der dort bereitgestellten Informationen. Die Verantwortung für den Inhalt der verlinkten Seiten liegt ausschließlich bei den Betreibern der jeweiligen Websites. Verwendung auf eigene Gefahr.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert