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!
Ich versuche mich schon eine zeitlang mit den mehrspaltigen Listenfeldern. Aber ich die eigentliche Problemstellung erläutere möchte ich kurz der Hintergrund vorstellen.
Ich habe in einem GUI 2 Listenfelder. In einem sollen Geräte aufgelistet werden, die dem Benutzer zu einer Messung zur Verfügung stehen. Genau genommen sind dies Geräte, die während der Messung einen Paramterscan vollführen sollen. Der Benutzer soll nun ein Gerät aus der Liste auswählen und konfigurieren können. Nach vollendeter Konfiguration soll die verwendete Gerät in einem zweiten Listenfeld (derzeit aktive Geräte) eingetragen werden. Soweit so gut. Auch soll dem Anwender die Möglichkeit bestehen durch Doppelklick auf das verwendete Gerät es erneut zu konfigurieren.
Und nun meine konkrete Frage. Ich hab es bisher nicht geschafft, dass das Gerär aus der ersten Liste in die zweite zu übertragen. Konkret heißt das, wie bekomme ich es raus, welches Gerät in der ersten Liste gerade angeklickt ist. Ich hab schon mit einem Eigenschaftknoten experimentiert. Die genutze Eigenschaft war Aktive Zelle oder so. Leider hat das nur insoweit funktioniert, dass ich stets das erste Gerät in der Liste übernommen habe, obwohl z.B. das zweite oder dritte markiert war. Gleiches Problem bestand dann im zweiten Listenfeld.
Ich könnte mir vorstellen, dass ich mich vielleicht einfach zu bl.. angestellt habe und hoffe, dass mir jemand weiterhelfen kann.
Auch möchte ich einfach mal in die Runde fragen, wie ihr diese Aufgabenstellung (wie oben bschrieben) lösen würdet. Es soll halt für den Anwender selbsterklärend sein. Würde mich auch diesbezüglich über Anregungen freuen.
Sorry für die Doppelposts, aber es kommen mir immer wieder neue Fragen zu den Listenfeldern.
Zum besseren Verständnis habe ich mal nun ein Bild mit angefügt. Also folgende Fragestellung: Ich möchte nicht per Doppelklick sondern mit einem normalen Button ein Gerät von einer in die andere Liste einsetzen. Nun kommt aber wieder die Frage auf, wie komme ich dann an die Elemente der aktiven Zeile ran?
' schrieb:wie komme ich dann an die Elemente der aktiven Zeile ran?
Ist das überhaupt möglich?
Ja, so einfach dass man es fast übersieht
Die aktive Zeile ist ganz einfach "Value" von Listbox.
entweder per Eigenschaftsknoten oder der direkte Wert den dir die Listbox im Blockdiagramm zurückliefert.
Genau genommen liefert dir Value nur den Index der markierten Zeile des Arrays in der Listbox. Du musst dauraus dann einfach mit Index Array die String aus dem gesamten Inhalt rausholen...
' schrieb:Ja, so einfach dass man es fast übersieht
Die aktive Zeile ist ganz einfach "Value" von Listbox.
entweder per Eigenschaftsknoten oder der direkte Wert den dir die Listbox im Blockdiagramm zurückliefert.
Genau genommen liefert dir Value nur den Index der markierten Zeile des Arrays in der Listbox. Du musst dauraus dann einfach mit Index Array die String aus dem gesamten Inhalt rausholen...
Gruss
Uli
:pccrashh, mann. Ich habe fast alle Eigenschaften durchprobiert, bloss auf Value wäre ich nie gekommen.
Ich danke Dir DoubleU für die schnelle Antwort. Ich habe daran nun knapp 2 Stunden gehangen.... Damit kann es also weitergehen
Und wieder hab ich einige Frage zu den Listenfeldern. Im wesentlichen geht es nun um Schönheitsaspekte meines GUIs und der damit resultierenden Benutzerfreundlichkeit.
Und zwar möchte ich nun ein ein Listenfeld haben, das beispielsweise mit dem Start der Applikation leer ist (auch keine Zeilen enthält). Durch Pressen eines Hinzufügen-Buttons soll dann eine Zeile erzeugt werden und ein Cursor in der 1 Spalte der Zeile stehen, so dass der Benutzer gleich eine Eingabe machen kann. Dabei soll es beliebig viele Zeilen einfügen können wobei die Größe des Listenfeldes nicht verändert wird, sondern halt bei Bedarf ein Scroll-Balken auftaucht. Für alle die nicht wissen was ich meine, unter LabVIEW 8 gibt es ein schönes Beispiel. Man füge hierzu eine Enum ins Frontpanel und klicke mit der rechten Maustaste auf Objekte bearbeiten. Da sieht man genau das was ich machen möchte. Ich hab aber mal wieder keine Ahnung, welche Eigenschaft ich mich bedienen muss und wie man das überhaupt umsetzt.
Du musst allerdings dafür sorgen, dass deine Listbox leer initialisiert wird (Leere Array-Konstante an ItemNames).
Irgendwie hab ich den Eindruck, dass du ab und an ein bisschen im Kreis denkst. Du probierst jetzt schon so lange damit rum, da hättest du auch selber drauf kommen können (müssen!)
Gruss
Achim
"Is there some mightier sage, of whom we have yet to learn?"
"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Du musst allerdings dafür sorgen, dass deine Listbox leer initialisiert wird (Leere Array-Konstante an ItemNames).[/quote]
Hallo Achim!
Erst einmal danke. Hatte es nun heute morgen auch schon für LV 8 gefunden. Trotzdem hab ich noch das Problem, dass viele Sachen zwar in LV8 funzen, allerdings in LV7.1 beispielsweise nicht, da ich dort eine ähnliche Eigenschaft wie EditPosition nicht finden konnte. Oder ich bin einfach wirklich nur blind. Und ich muss leider noch auf eine Kompatibiltät zu LV 7 Rücksicht nehmen. Darum vielleicht auch das im Kreis denken. Das ist auch meine Hauptschwierigkeit bei der ganzen Sache.