27.10.2004, 14:42
Beitrag #1
|
A.Bartrow
Unregistered
|
Ereignisse ins Sub-VI übertragen
Hallo!
Ich habe in einem VI eine Ereignisschleife, die aktiv wird, wenn auf der dazugehörigen Schaltfläch die Maus gedrückt wird. Jetzt möchte ich das VI aber als Sub-VI einstzen. Weiß hier zufällig jemand, wie ich das Ereignis 'Maustaste gedrückt' auf einer Schaltfläche des Haupt-VIs in das Sub-Vi übertrage ?
Danke schonmal!
|
|
|
27.10.2004, 14:51
Beitrag #2
|
bigwerwolfi
LVF-Grünschnabel
Beiträge: 13
Registriert seit: Oct 2004
kA
|
Ereignisse ins Sub-VI übertragen
Hallo
Kann man nicht einfach beim Haupt VI einen Ausgang für den Schalter machen und beim Sub VI einen Eingang? So könntest du es nämlich einfach nur durchziehen!
|
|
|
27.10.2004, 15:15
Beitrag #3
|
A.Bartrow
Unregistered
|
Ereignisse ins Sub-VI übertragen
Schön wäre es, doch so einfach ist es dann doch nicht.
Innerhalb der Ereignis-Schleife befindet sch dann noch einmal eine Ereignis-Schleife, in welcher ich die Abruchbedingung einer while-Schleife abfrage, nämlich Maus auf Schaltfläche freigegeben. Desegen möchte ch wissen, wie ich die Ereignisse in das Sub-VI bekomme, bzw. ob überhaupt!
|
|
|
28.10.2004, 11:44
Beitrag #4
|
bleuer
LVF-Neueinsteiger
Beiträge: 4
Registriert seit: Oct 2004
kA
|
Ereignisse ins Sub-VI übertragen
ich habe dasselbe problem, nur andersrum. ich möchte die daten eines sub-vi's, welches von mehreren Orten aufgerufen werden kann, aufs Haupt-VI übertragen...
|
|
|
29.11.2004, 13:33
Beitrag #5
|
A.Bartrow
Unregistered
|
Ereignisse ins Sub-VI übertragen
Hier jetzt noch einmal ausführlicher mein Problem, vielleicht kann mir dann doch noch jemand weiterhelfen, denn aus der Welt ist das Problem immer noch nicht:
Ich habe ein Frontpanel mit einem Schalter. Eine Ereignis-Schleife wartet jetzt auf das Ereignis "Maustaste über Schaltfläche gedrückt". ist das der fall startet die Schleife. Im inneren dieser Schleife gibt es dann noch Case-unterscheidungen und While-schleifen, aber eben noch eine ereignisgesteuerte Schleife die auf das Ereignis "Maustaste über Schaltfläche freigegeben" reagiert.
Das VI läuft tadellos. Alerdings möchte ich es als SubVI laufen lassen, habe dabei jedoch das Problem, dass mit dem ersten Ereignis das SubVI zwar gestartet wird, jedoch das zweite Ereignis "Maustaste über Schaltfläche freigegeben", was ich zum Beenden des SubVI's benötige nicht mehr an das SubVI senden kann, da das Programm darin feststeckt und das SubVI in einer Endlosschleife vor sich hin läuft und mir das komplett Programm zum Stocken bringt.
Daher nochmal die Frage: Kann ich ein Ereignis überhaupt in ein SubVI leiten, welches sich zu diesem Zeitpunkt in einer While-Schleife befindet, da ich es als Abbruchbedingung brauche??
|
|
|
29.11.2004, 21:20
Beitrag #6
|
Oliver Listing
LVF-Freak
Beiträge: 721
Registriert seit: Sep 2004
2012 und 2014 (Windows und Linux)
1998
EN
22844
Deutschland
|
Ereignisse ins Sub-VI übertragen
@bleuer
Wenn du noch Fragen oder Unklarheiten hast, war ich wohl nicht verständlich genug, als wir uns Ende Oktober darüber unterhielten.
Stelle deine Fragen doch hier weiterhin ein, und sage ehrlich, wenn du etwas noch nicht ganz verstanden hast. Ich werde mich bemühen...
Hi A.Bartrow,
nach meinem Wissensstand geht das (noch) nicht.
Ich habe mich aber auch noch nicht mit USER Events beschäftigt, noch weiß ich ob in 7.1 irgendwelche Neuerungen dazu gekommen sind.
Aber du kannst im Toplevel-VI die zwei Events abfragen und diese über eine z.B. Queue "weiterreichen":
- "Maustaste über Schaltfläche gedrückt": sendet über eine Queue die "Start"-Nachricht an dein parallel laufendes Sub-VI
- "Maustaste über Schaltfläche freigegeben": sendet über eine Queue die "Stop"-Nachricht an dein parallel laufendes Sub-VI
Das warten auf eine Nachricht in der Queue verbraucht ebenso keine Prozessorkapazität wie die Event-Structure.
mfg
Oliver
|
|
|
30.11.2004, 08:56
Beitrag #7
|
Mario
LVF-Neueinsteiger
Beiträge: 8
Registriert seit: Nov 2004
kA
|
Ereignisse ins Sub-VI übertragen
Ich wollte nicht extra einen neuen threat eröffnen, habe aber ein ähnlich gelagertes Problem.
Ich modifiziere ein mit LV6 geschriebenes Programm mit LV7.1.
Ich möchte ein "numeric Control"-Wert an ein Sub-VI übergeben, kann aber weder dessen "Terminal Pattern" noch die "Input" und "Outputs" verändern.
Laut LabVIEW Hilfe und -Manual sollte dies einfach möglich sein. Wie muss ich vorgehen?
Vielen Dank für jede Hilfe
Mario
|
|
|
30.11.2004, 09:58
Beitrag #8
|
|
|
30.11.2004, 12:11
Beitrag #9
|
Mario
LVF-Neueinsteiger
Beiträge: 8
Registriert seit: Nov 2004
kA
|
Ereignisse ins Sub-VI übertragen
Oliver Frank schrieb:ähnlich ist gut gesagt, A.Bartrow will ein Event in einem SubVi abfangen, alle anderen beschäfftigen sich mit Datenhandling unter LabVIEW.
Ich denke, daß jenes Kommentar ausdrückt, wie ich mich fühle...ich habe keine Ahnung ;-)
Also, die Pattern habe ich mir Anzeigen lassen, 2 Inputs und 4 Outputs.
Ich brauche noch einen Input, aber ich erhalte bei Rechtsklick auf die Pattern nicht den Menuepunkt "Pattern", um diese zu ändern, noch erhalte ich in der "expanded" Ansicht die Option "insert Input/output", die bleibt grau unterlegt inaktiv.
Mein Problem scheint so einfach zu sein, das ich dafür keine Hilfe finden konnte :-(
|
|
|
30.11.2004, 12:15
|
Dennis.Moser
Administrator
Beiträge: 3.045
Registriert seit: Aug 2004
5.1 : 7.1 : 8.x : 20xx
1997
DE_EN
57589
Deutschland
|
Ereignisse ins Sub-VI übertragen
hallo,
gehe oben rechts auf das VI logo (panel!)
--> rechte maustaste --> Show Connector ---> dann wieder auf Pattern rechte maustaste ---> dann auf Pattern ---> und passende Pattern auswählen !
Das wars
hoffe konnte helfen
gruss dennis
Wissen ist das einzige Gut das sich vermehrt, wenn man es teilt!
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
BC: 14vqy6mgfswpX6z7HLVxk1h3sHAvzE4aZG
|
|
|
| |