19.02.2009, 21:04
|
jg
CLA & CLED
Beiträge: 15.864
Registriert seit: Jun 2005
20xx / 8.x
1999
EN
Franken...
Deutschland
|
in einer Cluster Control einzelne Elemente "ausblenden"
' schrieb:Das ist ja genau das, was ich gesucht habe! Wieso hab ich denn das nicht selbst gefunden? Naja, jetzt hab ich's ja. Heißt auf Deustch im übrigen "Beschriftung.Format". ...
Keine Ahnung, wahrscheinlich wegen der "tollen" deutschen Übersetzung, "Beschriftung", naja...
Ich habe mir angewöhnt, das "Label" eines LV-Control analog zu einer textbasierten Programmiersprache als Variablennamen zu sehen. Somit hat bei mir jedes Control ein Label (wenn nicht im FP sichtbar sein soll, kann man es ja unsichtbar machen, halt bloss nicht wegeditieren), und jedes Label kommt innerhalb eines VI auch nur einmal vor (wenn was für den User denselben "Namen" haben soll, dafür gibt es die Caption = Untertitel).
Dass du die allgemeinen Control-Refnums dann auf Grund der ClassID oder Class Name auch ändern kannst, weisst du aber schon?! Einfacher ist vielleicht folgendes Bild:
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
Einführende Links zu LabVIEW, s. GerdWs Signatur.
|
|
|
19.02.2009, 21:30
|
IchSelbst
LVF-Guru
Beiträge: 3.692
Registriert seit: Feb 2005
11, 14, 15, 17, 18
-
DE
97437
Deutschland
|
in einer Cluster Control einzelne Elemente "ausblenden"
' schrieb:Ich habe mir angewöhnt, das "Label" eines LV-Control analog zu einer textbasierten Programmiersprache als Variablennamen zu sehen. Somit hat bei mir jedes Control ein Label (wenn nicht im FP sichtbar sein soll, kann man es ja unsichtbar machen, halt bloss nicht wegeditieren), und jedes Label kommt innerhalb eines VI auch nur einmal vor (wenn was für den User denselben "Namen" haben soll, dafür gibt es die Caption = Untertitel).
So Sachen setze ich mal stillschweigend voraus. Wer's anders macht, ist selber Schuld.
Zitat:Dass du die allgemeinen Control-Refnums dann auf Grund der ClassID oder Class Name auch ändern kannst, weisst du aber schon?!
Die Konvertierung in eine niedrigere Klasse hab ich schon gefunden: Das ganz ordinäre Konvertierungs-VI. Am Typeingang einfach die gewünschte Klasse anschließen. Da ich ja weiß, dass z.B. das dritte Element eines Clusters ein Boolean ist, kann ich die dritte Referenz gleich hart Typcasten nach Boolean.
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
|
|
|
20.02.2009, 09:20
|
IchSelbst
LVF-Guru
Beiträge: 3.692
Registriert seit: Feb 2005
11, 14, 15, 17, 18
-
DE
97437
Deutschland
|
in einer Cluster Control einzelne Elemente "ausblenden"
' schrieb:ein weiterer Nachteil, bei Änderung des Label-Namen geht es auch in die Hosen.
Bei LV geht alles in die Hose.
Zitat:Da gilt es abzuwägen,
Also das kleinere Übel wählen.
Zitat:was eher geändert wird, die Reihenfolge, Label-Name oder gar der Datentyp.
Ggf. wird der Datentyp wie geändert, wenn der Cluster nämlich nur die selben Typen hat. Die Reihenfolge wenn geändert wird - und die wird bei Erweitrung des Clusters geändert, weil bei Tab der Cursor der Reihe nach vorgehen soll - ist das schlimmste aller Übel. Dann ändert sich nämlich auch in den Unbundle die Values - und keiner merkt es.
Label-Namen sind gut. Den kann man mit so viel Redundanz versehen, dass eine Änderung des Namens ganz einfach ist: Einfach nach dem alten Namen suchen und druch den neuen ersetzen. Und da ein Vergleich der Instanznamen seltener vorkommt als ein Unbundle, sollte man über den Namen gehen. Schöner als das Property Label.Text fände ich halt ein Property Instanzname gleich unter ClassName.
In Delphi ist es im übrigen genauso: Da verwendet auch keiner Components[] sondern FindComponent(InstanzName).
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
|
|
|
20.02.2009, 10:47
|
Lucki
Tech.Exp.2.Klasse
Beiträge: 7.699
Registriert seit: Mar 2006
LV 2016-18 prof.
1995
DE
01108
Deutschland
|
in einer Cluster Control einzelne Elemente "ausblenden"
Zitat:ZITAT(RoLe @ 20.02.2009 , 08:47:51) *
ein weiterer Nachteil, bei Änderung des Label-Namen geht es auch in die Hosen.
' schrieb:Bei LV geht alles in die Hose.
Nun übertreibt mal nicht. Dann besorgt Euch doch einfach mal so ein LabVIEW, wie ich es habe ^_^ Da kann ich die Label-Namen auf dem Frontpanel beliebig änderen (Ob Element direkt oder innerhalb eines Clusters ist ganz egal) - alles läuft normal weiter. Denn alle Eigenschaftsknoten benennen sich mit um.
(Bitte vorauseilend um Verzeihung, falls Ihr von etwas ganz anderem redet)
Demo:
|
|
|
20.02.2009, 11:19
|
RoLe
LVF-Guru
Beiträge: 1.236
Registriert seit: Jul 2007
-
1997
en
0
Schweiz
|
in einer Cluster Control einzelne Elemente "ausblenden"
' schrieb:Nun übertreibt mal nicht. Dann besorgt Euch doch einfach mal so ein LabVIEW, wie ich es habe ^_^
...
(Bitte vorauseilend um Verzeihung, falls Ihr von etwas ganz anderem redet)
Also ich bezog mich auf den Vergleich, Label.Name = Konstante, die Konstante passt sich eben nicht an.
z.Bsp.
Label.Name alt = wert1
Label.Name neu = Wert1
.·´¯)--> Leben ist das, was dir passiert, wenn du eifrig dabei bist andere Pläne zu machen <--(¯`·.
|
|
|
| |