LabVIEWForum.de
Chart Label zur Laufzeit erstellen - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Chart Label zur Laufzeit erstellen (/Thread-Chart-Label-zur-Laufzeit-erstellen)



Chart Label zur Laufzeit erstellen - gottfried - 26.04.2008 16:51

Hallo,

es gibt zwar eine Property-Node Label.Text aber das darf man nur lesen? Kann ich der Chart wirklich zur Laufzeit keinen Namen geben? Die Alternative wäre ein String-Indikator an der selben Stelle - ist aber nicht elegant.

Danke

Gottfried


Chart Label zur Laufzeit erstellen - IchSelbst - 26.04.2008 18:10

' schrieb:es gibt zwar eine Property-Node Label.Text aber das darf man nur lesen? Kann ich der Chart wirklich zur Laufzeit keinen Namen geben?
Der Name einer Komponente, die nicht selbst zur Laufzeit erstellt wurde, kann zur Laufzeit nicht geändert werden. Das ergibt normalerweise auch keinen Sinn.

Zitat:Die Alternative wäre ein String-Indikator an der selben Stelle - ist aber nicht elegant.
Oder eben das Property "Untertitel" verwenden.


Chart Label zur Laufzeit erstellen - jg - 26.04.2008 18:11

Prinzipiell gilt für ALLE LV-Control-Elemente:

Das Label kann man (wenn man es mit textbasierten Programmiersprachen vergleicht) am ehesten mit dem Variablennamen vergleichen. Deshalb kann man das Label NIE zur Laufzeit ändern (sondern nur lesen).

Wenn du aber die Bezeichnung im FP zur Laufzeit ändern willst (z.B. für mehrsprachiges GUI), dann lass dir die "Caption" des entsprechenden Elementes anzeigen. Die kannst du zur Laufzeit per PropertyNode setzen.

MfG, Jens

EDIT: Die Unterfranken-Connection hat mal wieder gleichzeitig zugeschlagenHehe


Chart Label zur Laufzeit erstellen - gottfried - 27.04.2008 09:16

Hallo,

erst einmal danke für die Erklärung mit den "Variablennamen" - kapiert.... nein nicht ganz, wieso können dann z.B. 2 Graphen den selben Namen haben?

Untertitel & Caption habe ich noch nie verwendet - danke für die Hinweise.

Danke

Gottfried


Chart Label zur Laufzeit erstellen - IchSelbst - 27.04.2008 09:54

' schrieb:wieso können dann z.B. 2 Graphen den selben Namen haben?
Weil das nicht der selbe ist, sondern nur der gleiche. Tongue

Wie es genau ist, weiß ich nicht. Ich denke wir folgendes:

Hinter dem Namen versteckt sich noch ein eineindeutiger Handle. Dieser Handle wird erzeugt in dem Moment, in dem auch das Element erzeugt wird. Für den LV-Kompiler sind also Variablen mit gleichem Namen unterschiedlich.

Zwar kann man gleiche Namen vergeben, das führt aber zu Inkonsistenzen, sodass man sowas auf jeden Fall vermeiden muss. Welchen sollte man auswählen aus der Liste, die man "bei Variable auswählen" angezeigt bekommt? Man sieht ja nur den Namen, nicht de´n Handle.

Mir scheint es so zu sein, dass LV manchmal mit dem Handle arbeitet, manchmal aber auch mit dem Namen. Und das kann zu bösen Überraschungen führen.


Chart Label zur Laufzeit erstellen - gottfried - 27.04.2008 12:31

aha & danke


Chart Label zur Laufzeit erstellen - rolfk - 28.04.2008 08:01

' schrieb:Weil das nicht der selbe ist, sondern nur der gleiche. Tongue

Wie es genau ist, weiß ich nicht. Ich denke wir folgendes:

Hinter dem Namen versteckt sich noch ein eineindeutiger Handle. Dieser Handle wird erzeugt in dem Moment, in dem auch das Element erzeugt wird. Für den LV-Kompiler sind also Variablen mit gleichem Namen unterschiedlich.

Zwar kann man gleiche Namen vergeben, das führt aber zu Inkonsistenzen, sodass man sowas auf jeden Fall vermeiden muss. Welchen sollte man auswählen aus der Liste, die man "bei Variable auswählen" angezeigt bekommt? Man sieht ja nur den Namen, nicht de´n Handle.

Mir scheint es so zu sein, dass LV manchmal mit dem Handle arbeitet, manchmal aber auch mit dem Namen. Und das kann zu bösen Überraschungen führen.

Also LabVIEW arbeitet eigentlich immer mit dem "Handle" (ist effektiv ein in Standard C programmiertes Objekt also eigentlich ein Pointer). Darum funktzt es trotzdem. Aber wir Menschen haben mit numerischen Werten etwas Mühe und darum ist eine eindeutige Vergabe von Namen durchaus sinnvoll. Du hast es ja schon angesprochen, dass es etwas lästig ist aus einer langen Liste von Controlnamen im Popupmenü den richtigen zu wählen wenn da mehrere Gleiche sind.

Auch kann es problematisch werden wenn Du über VI Server etwas machen willst da dort die Identifizierung teilweise über den Namen geschieht und dann gibts halt da auch Schwierigkeiten. Das Label ist aber frei wählbar und hat in LabVIEW keinerlei weitere Funktion dann als dem Control zugewiesener Text sichtbar zu sein (und war übrigens in 3.x noch nicht vorhanden sondern wurde nachträglich hinzugefügt so circa 5.0 um eben die dynamische Anpassung etwa zum Zweck der Mehrsprachigkeit möglich zu machen).

Rolf Kalbermatter


Chart Label zur Laufzeit erstellen - jg - 28.04.2008 09:04

' schrieb:Das Label ist aber frei wählbar und hat in LabVIEW keinerlei weitere Funktion dann als dem Control zugewiesener Text sichtbar zu sein (und war übrigens in 3.x noch nicht vorhanden sondern wurde nachträglich hinzugefügt so circa 5.0 um eben die dynamische Anpassung etwa zum Zweck der Mehrsprachigkeit möglich zu machen).
Hallo, Rolf,

bringst du jetzt nicht Label und Caption durcheinander?
Label -> zur Laufzeit nur lesbar.
Caption -> kann zur Laufzeit geändert werden.

Ansonsten ist deinen Ausführungen mal wieder nichts hinzuzufügenTop1

MfG, Jens


Chart Label zur Laufzeit erstellen - IchSelbst - 28.04.2008 09:20

' schrieb:Auch kann es problematisch werden wenn Du über VI Server etwas machen willst da dort die Identifizierung teilweise über den Namen geschieht und dann gibts halt da auch Schwierigkeiten.
Ich weiß noch eins, das Schwierigkeiten macht: Namen von Variablen in (strikten) Clustern. Ganz schlimm: Gleicher Name von Variablen in unterschiedlichen Clustern, die selbst wieder in einem Cluster liegen. Wer dann noch "Volle Namen ausblenden" macht, hat ein unlösbares Problem, wenn im zweiten Cluster etwas geändert wird. Dann wird im Bündeln nämlich plötzlich aus der "Variablen Cluster 2" plötzlich "Variable Cluster 1".