LabVIEWForum.de - Ereignis-Steuerung (Kopfnuss ODER/UND Verständnisproblem)

LabVIEWForum.de

Normale Version: Ereignis-Steuerung (Kopfnuss ODER/UND Verständnisproblem)
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo LabVIEW-Gemeinde,

ich bin mal wieder an einem Punkt angelangt, wo sich wahrscheinlich doch noch grundlegende Verständnisprobleme hinsichtlich der LV-Philosophie offenbaren... Fight

Sachstand:
Ich habe ein "Progrämmchen", dass in seiner Grundstruktur aus einer Ereignis-Steuerung besteht, umgeben mit einer While-Schleife. Auf dem Frontpanel sind nun einige Bedienelemente, über sich ich eine "Aktion" auslösen kann (Inhalt der Ereignis-Cases).

Soweit alles wunderbar.

Problembeschreibung (in Textform, sorry, meine LV-Lizenz läuft auf einem Stand-Alone Rechner):
Ein Kollege arbeitet an einer anderen Problemstellung und nutzt zu dessen Lösung ein VisualBasic-Programm >>ACHTUNG! Fokus!!!<<. Dabei kann er ab und an das Ergebnis einer "Aktion" aus meinem LabVIEW-Programm ganz gut gebrauchen >>keine Fokus!!<<.

Meine bescheidene Idee:
Ein beliebiges System-Ereignis abfangen (generiert aus der VB-Anwendung) und den entsprechenden Ereignis-Case im LV-Programm um genau dieses System-Ereignis erweitern.
Ich wähle das Drücken der Taste "M"!

Hürde #1: Timeout-Steuerung darf nicht (-1) sein.
Lösung Hürde #1: Timeout-Steuerung auf (0) setzen und While-Schleife per Timing verlangsamen.

Hürde #2: Der >>FOKUS<< liegt bei der eigentlichen VB-Anwendung nicht mehr bei meinem VI.
Lösung Hürde #2: Aus der Palette "Konnektivität" schnappe ich mit die Tastatur (Referenz-Erzeugung ausserhalb der While-Schleife) und greife damit in schöner Regelmäßigkeit (innerhalb der While-Schleife) auf den Tastaturpuffer zu. Da ich mit dem Puffer irgendwohin muss, füge ich direkt die Array-Funktion (letztes Element löschen) an, die wiederum sagt, welches Element gelöscht wurde. Ist es mein "M" das soll ein Boolsches-Element (ich verstecke es und nenne es "M-Flag") den Wert TRUE annehmen, sonst Eigenschaft behalten (FALSE). Funktioniert!
Probe Hürde #2: LV-Programm starten, irgendeine andere Anwendung aufrufen und "M" drücken. Voilá, auf dem Frontpanel im Hintergrund geht mein "M-Flag" an. Metal

Hürde #3: Das "M-Flag" in meine Ergeignis-Struktur aufnehmen.... Und da kracht es Post-880-1250020234

Wenn ich in meine gewünschte "Aktion" ein zweites Ereignis mit aufnehme, und zwar "M-Flag Wertänderung", funktioniert genau... NICHTS.

Im Hindergrund leuchtet zur Kontrolle zwar mein "M-Flag" auf (also Wertänderung tritt ein), aber die Ereignisstruktur springt nicht in die "Aktion".

Hier bin ich mit meinem Latein am Ende Blink
Wahrscheinlich ist aber auch schon meine Ereignisstruktur eine dusslige Idee
bzw. einfach nicht mit der Problemstellung kompatibel.

Vielen Dank schon mal im Voraus für hilfreiche Tipps (Kopfnuss warum es net geht) bzw. für richtige Lösungen/Herangehensweisen für mein Problem!




PS: Nur der Vollständigkeit halber - LV8.6 auf WXP, ist hier aber wahrscheinlich gar nicht relevant.
Wenn ich richtig verstehe, dann willst du so etwas:
[attachment=53677]
Bei mir funzt das...

Gruß, Jens
Moin Jens, yeaaah! so geht ein guter Tag los Yahoo

Vielen Dank für Deine Mühe... meinen langen Text durchzuackern
und das ganze nochmal in einem VI nachzuvollziehen

Thanx

Der Teufel steckte im Detail: Boolean::Eigenschaften::Wert(signalisierend)!!!

Hatte nur Wert per Eigenschaftsknoten geändert. jou Zocken
Man, dabei war ich doch schon mal soweit *grrrr*
Mache eindeutig zu wenig mit LabVIEW... muss da wieder mehr trainieren Box

Werde mich auch mal um eine Internetanbindung kümmern... Bilder sagen ja doch mehr als 1.000 Worte :|

Also.. hab vielen Dank nochmal Mail


Viele Gruesse
Ralf


PS: Schieberegister für die Tatstatur-Referenz..? Ist das wirklich nötig?
Referenz-URLs