LabVIEWForum.de
Aus Tabellenelement soll angewählte Zeile ausgegeben werden - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Aus Tabellenelement soll angewählte Zeile ausgegeben werden (/Thread-Aus-Tabellenelement-soll-angewaehlte-Zeile-ausgegeben-werden)

Seiten: 1 2


Aus Tabellenelement soll angewählte Zeile ausgegeben werden - 1johleh - 22.04.2010 10:47

Hallo Leute,

bin mal wieder an einem Punkt wo ich Rat brauche.
Ich habe ein 2D-Array, welches ich in ein Tabelle schreibe.(Mehrere Zeilen und Spalten)
Gibt es die Möglichkeit iun dieser Tabelle mit einem Doppelklick Daten aus zu geben?
Also genau die angeklickte Zeile?
Danke für diei Hilfe!

Gruß


Aus Tabellenelement soll angewählte Zeile ausgegeben werden - SeBa - 22.04.2010 11:03

Zum Beispiel:

[attachment=25919][attachment=25920]


Gruß SeBa


Aus Tabellenelement soll angewählte Zeile ausgegeben werden - 1johleh - 22.04.2010 13:36

Hi Seba,

danke erst mal, aber hast du evtl auch ne Lösung ohne Statemachine?
Denn ich wollte es in eine´m SubVI verbauen. Ja und die Erfahrung zeigt 2xStatemachine ist mist :-)

Lg


Aus Tabellenelement soll angewählte Zeile ausgegeben werden - chrissyPu - 22.04.2010 14:11

Da ist doch keine State-Machine... Und wieso sollten zwei Zustandsautomaten Mist sein?

Ach, ich habs: Du meinst Event-Strukturen, oder? Weiß nicht, ob das in dem Fall, wenn Du nur auf ein Event in der einen reagierst, problematisch ist. Alternativ: du brauchst ja nur die Koordinaten der Tabellenzeile, den Rest-code kannst Du ja in ein Sub-Vi packen. Also in Deiner Haupt-Event-Schleife das von SeBa beschriebene Event rein, die Koordinaten auslesen, neuen State in der dazugehörigen State-Machine und darin dann den Rest. Oder halt alles wie oben in Deine erste Event-Struktur packen...


Aus Tabellenelement soll angewählte Zeile ausgegeben werden - GerdW - 22.04.2010 14:14

Hallo johleh,

"danke erst mal, aber hast du evtl auch ne Lösung ohne Statemachine?
Denn ich wollte es in eine´m SubVI verbauen. Ja und die Erfahrung zeigt 2xStatemachine ist mist :-)"

- Wenn du mit Statemachine die Eventstruktur meinst, hast du (bedingt) recht. Es ist ungünstig, 2 Eventstrukturen zu haben, die das gleiche Event verarbeiten sollen... Das heißt nicht, dass ich mehr als eine Eventstruktur pro VI empfehlen würde!

- Was meinst du mit "es"? Nur das Auslesen der Zeile aus der Tabelle? Das Detektieren des Mausklicks? Bitte genauer ausdrücken...

- Wie sonst willst du einen Doppelklick feststellen, ohne die Eventstruktur zu verwenden?
- Warum willst du "es in einem SubVI verbauen", wenn die Tabelle im Haupt-VI ist?

Fragen über Fragen...


Aus Tabellenelement soll angewählte Zeile ausgegeben werden - Kiesch - 22.04.2010 14:35

Zitat:- Wie sonst willst du einen Doppelklick feststellen, ohne die Eventstruktur zu verwenden?

Man könnte beim ersten klick eine Variable auf True setzen die nach einer gewissen Zeitdauer wieder auf False gesetzt wird. Ist die True löst der zweite Klick den gewünschten Effekt aus.
Danach muss man dann halt wie oben gesagt die Mausposition folgerichtig auswerten.


Aus Tabellenelement soll angewählte Zeile ausgegeben werden - GerdW - 22.04.2010 14:44

Hallo Kiesch,

also doch mit Event-Struktur, jetzt aber 2 Events (einfacher Mausklick und TimeOut)?


Aus Tabellenelement soll angewählte Zeile ausgegeben werden - SeBa - 22.04.2010 15:02

Cool

und den Timeout holen wir von hier: "HKEY_CURRENT_USERControl PanelMouseDoubleClickSpeed" Angabe in [ms].


Unsure


Gruß SeBa


Aus Tabellenelement soll angewählte Zeile ausgegeben werden - 1johleh - 23.04.2010 11:05

Hallo Leute,

erst mal Danke für die Zahlreichen Antworten.
So jetzt erst mal ein nach dem Anderen...

@ Gerdw ich meine mit es: Die komplette Sache ich würde mir gerne ein eigenes VI aufbauen, welches ich in meinem Hauptprogramm aufrufen kann.
Denn ICH rufe an dieser Stelle verschiedene VI´s mit unterschiedlichen Funktionen auf.
So wie ich bisher weiß ist es nihct gut, wenn im Hauptprogramm verschiedene Eventstrukturen sind und im SubVI,
welches dynamisch aufgerufen wird sind auch Eventstrukturen.

Ich möchte es nur äußerst ungern mit in Hauptprogramm nehmen.

@Kiesch: Sorry da kann ich nicht ganz folgen, bin nocht nicht wirklich Fit in LV ehr ein Greenhorn Undecided
@ Seba: Huaaaa was ist denn damit gemeint???? Bahn

Vielen Danke noch mal an alle die mir helfen/Helfen wollten

Gruß


Aus Tabellenelement soll angewählte Zeile ausgegeben werden - GerdW - 23.04.2010 11:13

Hallo johleh,

wenn du dir SeBas Beispiel anschaust, dann siehst du, dass die Lösung deiner Frage aus einem Event besteht, mit dessen Ausgangswerten eine InvokeNode der Tabelle gefüttert wird, um das richtige Element zu indizieren. Warum soll das in ein subVI, wenn du das Event (sinnvollerweise) im HauptVI bearbeitest? Und nur die IndexArray-Funktion in ein subVI zu packe, halte ich für übertrieben...

Ansonsten: UserEvent definieren, die zugehörige Referenz in ein subVI führen und dort aufs UserEvent warten. Zusammen mit dem dann nötigen Overhead der Programmsteuerung (wie: subVI beenden...)