LabVIEWForum.de - enum strings aus typedef auslesen

LabVIEWForum.de

Normale Version: enum strings aus typedef auslesen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen

ich habe eine Type Def. die nur ein Enum enthält. Ich würde gerne die Strings mit einem anderen VI auslesen, alles was ich bisher hinbekommen habe ist den 1. Eintrag auszulesen.
Kann mir jemand helfen?

Gruß
Hallo retlaps,

nimm doch die Property "Strings[]" statt der Property "Value"...
Hallo,
danke für die Antwort, leider kann ich die Property "strings []" in meinem Fall nicht auswählen, oder ich bin zu doof sie zu finden.

Gruß
Hallo retlaps,

dann musst du vorher die RefNum in eine speziellere Klasse umwandeln, um die enum-spezifischen Properties lesen zu können...
Danke GerdW, du bist mein Held.
Diese ganze Angelegenheit mit Referenzen und Refnums ist Neuland für mich.
Hat aber geklappt.

kleine Ergänzung:
kann ich eine Type Def. programmatisch erstellen und abspeichern, d.h. ich lese die alte Type Def. aus, erstelle ein neues VI mit meinem geänderten Strings und speichere es als neue Type Def. (Dient mal wieder alles der Übersetzung eines VIs)?

Gruß
Hallo retlaps,

Zitat:kann ich eine Type Def. programmatisch erstellen und abspeichern
Ja sicherlich - bei Enums aber nur mit LV Scripting... Und das ist nix für Einsteiger, nix für Produktivumgebungen und meist "unsupported by NI". Ich habe damit auch noch nicht gearbeitet.

Aber:
Enums sind eh nicht dafür gedacht, deren String zu ändern. Dafür nimmt man Rings! Und die darfst du dann auch programmatisch wieder ändern, ohne irgendwelche Klimmzüge zwischendurch...

Erläuterung:
Rings speichern nur den Zahlenwert als Datentyp, der String ist hier nur "schmückendes Beiwerk" und kann jederzeit geändert werden.
Ein Enum dagegen speichert auch den String als Datentyp. Da LV streng datentypbasiert arbeitet, zieht eine Änderung eines Enums immer eine Neukompilierung nach sich - was in einer Exe nicht funktioniert und deshalb programmatisch/zur Laufzeit nicht möglich ist...
Nochmals danke für die Antwort,

leider haben unsere Entwickler, die das Programm erstellt haben, dass ich übersetzen muss nicht so viel Ahnung von LV wie Du. Deshalb werde ich mich wohl mit den Enums rumschlagen dürfen.
Ich werde aber deine Vorschläge weiterleiten.

Gruß
Referenz-URLs