LabVIEWForum.de - Class Conflict bei Reference

LabVIEWForum.de

Normale Version: Class Conflict bei Reference
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

ich überarbeite gerade ein Programm das icht nicht selbst geschrieben habe und bin leider auch noch nicht so fit in LabVIEW, dass mir alles sofort logisch vorkommtSmile

Ich habe im Frontpanel zum Enum rngMeasRange einen Eintrag hinzugefügt. Leider funktioniert jetzt die Verbindung zu der Globalen Variable nicht mehr (beides Rot eingekreist). Allerdings verstehe ich nicht so ganz warum... es müsste ja eigentlich nur um die Referenz zum Enum gehen und die ändert sich ja nicht oder?

Es liegt auch an diesem einen zusätzlichen Eintrag im Enum, ohne diesen läuft wieder alles einwandfrei!


Wäre super toll, wenn mir jemand einen Denkanstoß geben könnte wo das Problem liegt!

Sebastian
Refnums in LabVIEW können sogenannt strict sein (und müssen das auch wenn Du später objectspezifische Eigenschaften und Methoden ansprechen willst).

Die einfachst Lösung für Dein Problem ist um auf den Ausgang des Bundlers einen Rechstklick zu machen. Dort wählst Du dann Create Control aus. Dieses Control kopierst Du from Frontpanel in den Zwischenspeicher. Danach gehst Du zum Frontpanel der Globalen, selektierst das entsprechende Kontroll darauf und machst ein Paste.

Und bitte das alles auf einer Arbeitskopie und nicht dem einzigen Masteroriginal das Du hast! Wink

Rolf Kalbermatter
Hallo!

Danke vielmals! Hat alles so funktioniert wie du gesagt hastSmile

Nur verstanden habe ich das leider nicht...

Referenzen beinhalten doch die Speicheradresse und dementsprechend kann ich vom HauptVI als auch von SubVI's auf die Properties/Values des Elements zugreifen. Was bedeutet in diesem Zusammenhang "strict"?

Danke nochmal!

Sebastian
Eine einfache Referenz ist nicht wirklich eine Speicheradresse aber für den Laien ist es genug zu wissen, dass es ungefähr analog zu einer Speicheradresse ist. Aber LabVIEW kennt auch strict Referenzen. Diese beinhalten auch eine genaue Beschreibung des Datentypes des Kontrolls. Das ist praktisch wenn Du kontrolltypspezifische Eigenschaften oder Methoden benützen willst. Es hat nämlich keinen Sinn (und würde einen hässlichen Fehler geben) wenn man bei einem einfachen numerischen Kontroll die Graphskala anpassen möchte, da dieses Kontroll keinerlei solche Eigenschaft hat.

Und bei einem Enum sind die verschiedenen Enumeration Values eben auch Teil des Datentypes. Das ist der Unterschied zwischen einem Enum und einem Ringkontrol.

Rolf Kalbermatter
Referenz-URLs