Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
Ist es möglich ein dynamisch wachsendes Button-Array oder besser noch Cluster-Array (Buttons+String) mit
steuerbaren Buttons in z.B. Table Control darzustellen? Ich habe so was ähnliches schon mal in einem Beitrag
mit LabView CVI gesehen, möchte dies jedoch in der LabView 15 Basisversion darstellen.
Statt dem "Test" Button will ich ein "Delete" Button erzeugen, der die Reihe löscht wenn man
ihn drückt und dann das Array bzw. Table Control neu sortiert.
Das ganze soll aber nicht in CVI geschehen.
RE: Dynamisches Cluster/Button-Array mit Steuerung
Ich mach sowas immer so:
* Array of Cluster(Element, ..., Button, ...)
* Event-Case "Value changed" vom ganzen Array
* "Neuer Wert" in ein SubVI geben
* Dort alle Indices des Array durchgehen und den Delete-Button im Cluster abfragen.
* Wenn gefunden, dann diesen Index aus dem Array löschen und das neue Array ausgeben.
* Den Ausgang des SubVIs per LocVar auf das Anzeige/Bedien-Element zurückschreiben.
Tabellen gefallen mir nicht, Cluster sehen viel schöner aus ...
Mit einer Tabelle habe ich folgendes gemacht:
* Tabelle markieren => Zeile über Propertynode erfassbar
* Der Button "Delete" liegt nicht in der Tabelle (wohl aber im selben Cluster, der auch die Tabelle enthält)
* Bei Klick auf den Button wir die aktuelle Zeile gelöscht.
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
25.02.2016, 14:47 (Dieser Beitrag wurde zuletzt bearbeitet: 25.02.2016 15:28 von Rene123.)
RE: Dynamisches Cluster/Button-Array mit Steuerung
Habe mal das ButtonArrayVI so bearbeitet, wie es vermutlich funktionieren soll.
@IchSelbst: Habe Dein VI jetzt nicht angesehen, Zeitdruck. Vielleich ist es besser als meines, oder Du hast verstanden, wie es gehen soll, und ich nicht. Auf alle Fälle bitte ich um Entschuldigung.
RE: Dynamisches Cluster/Button-Array mit Steuerung
(26.02.2016 10:56 )Lucki schrieb: Vielleich ist es besser als meines, oder Du hast verstanden, wie es gehen soll, und ich nicht. Auf alle Fälle bitte ich um Entschuldigung.
Für was denn entschuldigen?
Ich vermute, dass Rene123 meinen Vorschlag nicht verwenden wird: Es handelt sich um eine FGV mit Referenzen auf FP-Elemente. Und da Rene123 auf seinem BD noch viel Platz hat, wird er kaum auf erweiterte SubVI-Technik umstellen, die extrem Platz-sparend wäre. Außerdem müsste er diverse FP-Elemente zu Clustern zusammenfassen, anstelle von Decorations.
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
RE: Dynamisches Cluster/Button-Array mit Steuerung
Also, erst einmal vielen Dank für die super Hilfe von euch beiden.
Ich nehme mir von beiden was raus, da ich z.B. nicht wusste, dass man Cluster in Cluster machen kann. Ich kenne das aus C, da kann man mehrere Struct erstellen und dann dereferenzieren um so die Daten zu bekommen.
@"IchSelbst":
Du hast da eine extrem komplexe StateMachine gebaut, die ich mir mal genauer anschauen muss. Da sind ein paar Ideen drinnen, die ich vorher noch gar nicht in betracht gezogen hatte.
Auf jeden Fall vom Ablauf her schöner als meine.
Ich arbeite das mal durch und werde da noch einen Bericht abgeben.
RE: Dynamisches Cluster/Button-Array mit Steuerung
(01.03.2016 10:02 )Rene123 schrieb: Du hast da eine extrem komplexe StateMachine gebaut
"extrem komplex" - naja, das liegt im Auge des Betrachters ...
Eigentlich das das keine StateMachine, sondern eine Ansammlung von Methoden- und Eigenschafts-Knoten. Jeder einzelne "Case" ist eine Methode oder Eigenschaft der Klasse(!) Datensatz. Die Ein- und Ausgänge des SubVIs stellen die öffentliche Schnittstelle der "Klasse" dar. Da LabVIEW in der Anzahl der Ein- und Ausgänge sehr beschränkt ist (was auch gut so ist), muss man sich für das Aufrufen der Methoden/Eigenschaften halt was einfallen lassen: Einen Enumerator, der die Methode bzw. die Eigenschaft bestimmt, und einen Variant, der die Daten für die Methoden/Propertys übergibt ...
Zitat:Ich kenne das aus C, da kann man mehrere Struct erstellen und dann dereferenzieren um so die Daten zu bekommen.
Programmieren ist ein geistiges Handwerk, fast schon eine Kunst. Die verwendete Programmiersprache ist da lediglich Handwerkszeug. Allerdings muss man schon wissen, wie man das Beil schwingen muss, um den Holzscheit genau in der Mitte zu treffen, damit der auch richtig gespaltet wird ...
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).