LabVIEWForum.de
Element in Cluster of Array of Cluster ausblenden - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Element in Cluster of Array of Cluster ausblenden (/Thread-Element-in-Cluster-of-Array-of-Cluster-ausblenden)



Element in Cluster of Array of Cluster ausblenden - R.Fuertig - 22.09.2016 15:47

Hallo,

ich habe ein Cluster of Array of Cluster, und würde gerne mit einem boolschen Element innerhalb des untersten Clusters, das Dbl. Eingabefeld ausblenden bzw. deaktivieren. Ich habe jedoch leider kein Eigenschaftsknoten oder änliches gefunden, womit dies möglich ist.

Kennt jemand eine Möglichkeit, oder geht dies gar nicht? In meinem richtigen VI sind das natürlich alles Typdefinitionen also (Cls, Array und nochmal Cls).

Vielen Dank schonmal im Vorraus.

Anhang (Dummy VI um zu veranschaulichen, was ich meine)


RE: Element in Cluster of Array of Cluster ausblenden - IchSelbst - 23.09.2016 07:39

(22.09.2016 15:47 )R.Fuertig schrieb:  ich habe ein Cluster of Array of Cluster, und würde gerne mit einem boolschen Element innerhalb des untersten Clusters, das Dbl. Eingabefeld ausblenden bzw. deaktivieren.
.Das geht schon.

Erstelle aus dem Frontpanel heraus von dem Element, das du deaktivieren willst, also dem DBL-Feld, eine Referenz. Mittels dieser Referenz und einem angeschlossenen Property kannst du auf das Element zugreifen.

Allerdings hat diese Sache einen Nachteil: Die Manipulation dieses einen Feldes per Referenz wirkt sich auf alle selben Felder in allen Indices des Array aus. Das ist auch richtig so, weil in einem Array alle Index-Elemente identisch behandelt werden (außer natürlich für den Wert Value).

Funktionieren würde diese Methode nur dann zur Zufriedenheit, wenn nur ein Index sichtbar ist.


RE: Element in Cluster of Array of Cluster ausblenden - Lucki - 24.09.2016 15:33

Eine mögliche, aber superumstädliche Methode wäre: Die dbl-Werte werden durch Strings eretzt. Den Elementen würde man das optisch nicht ansehen. Im "ausgeblenden" Zustand wird der Wert durch einen Leerstring ersetzt. Den ursprünglichen Wert muß sich das Programm natürlich merken, damit er gegebenenfalls wieder hergestellt werden kann.
Ich versuche im FP Arrays wegen der mangelnden Flexibilität in den Eigenschaften der Einzelelemente nach Möglichkeit zu vermeiden. Unumgänglich sind Arrays nur, wenn die Anzahl der Elemente variiert. Sollte bei Dir das Array eine feste Länge haben, dann melde Dich noch mal. Dann ließe sich etwas machen


RE: Element in Cluster of Array of Cluster ausblenden - R.Fuertig - 26.09.2016 06:20

Danke für eure Hinweise,

genau aud die gleiche Lösungen bin ich auch schon gekommen, wenn man dur eine Referenz ein Feld ausblendet, Blendet man diese in jedem Array-Element aus. Da die Länge des Array nicht bekannt ist, funktioniert die zweite Lösung auch nicht. Dann werde ich das Feld einfach mit NaN füllen.


RE: Element in Cluster of Array of Cluster ausblenden - GerdW - 26.09.2016 07:47

Hallo R.,

der "übliche" Weg, den Ludwig sicherlich auch vorschlagen wollte, ist der, dass man auf dem UI eben kein Array benutzt, sondern einen Cluster (oder einen Cluster of Cluster): hier kann man beliebige Elemente disablen oder sonstwie bearbeiten!
Dies erreicht man, indem man im Hintergrund die Arraydaten nach Bedarf in den Cluster auf dem UI schreibt und bei Änderungen auch wieder zurückschreibt…

Ich verwende auch gern (zusätzlich) Listboxen:
[attachment=56693]
Links eine Listbox, die ein Array of Cluster darstellt. Wenn man darin einen Eintragauswählt, kann man rechts dessen Elemente bearbeiten…