LabVIEWForum.de - automatische Anpassung der Referenzen von Benutzerereignissen

LabVIEWForum.de

Normale Version: automatische Anpassung der Referenzen von Benutzerereignissen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
In einem VI habe ich ein Benutzerereignis erstellt. Das Ereignis habe ich registriert, dann bin ich an das Ende von dem Block gegangen und habe bei Referenz mit der re. Maustaste-Erstellen-Anzeigeelement gemacht. Dieses Element habe ich von dem HauptVI in das SubVI gezogen, das Element dann mit einem Anschlussfeld verbunden und an dem HauptVI dann daran den Anschluss drangehängt, damit die Referenz zu dem Benutzerevent übergeben werden kann.

Verändere ich nun das Benutzerevent, in dem ich z.B. ein neues Ereignis dranhänge, dann ist dieser erzeute Referenzblock nicht mehr zu gebrauchen. Auch wenn ich z.B. den Namen von dem Ereignis ändere in seiner Beschriftung, dann erfolgt keine automatische Anpassung in der Eventstruktur des SubVIs.

Diese Referenzen werden also nicht "automatisch" aktualisiert.

Geht das irgendwie, dass auch eine automatische Anpassung erfolgt? Wenn ich eine Eventstruktur im HauptVI habe und dort einen Namen ändere, dann passen sich die Bezeichnungen dort auch automatisch an.
Soweit ich weiß nur halbautomatisch. Das heisst, du musst aus dem Event registration refnum eine Typdefinition machen und die in allen betroffenen SubVis verwenden. Änderst du nun die Art des dynamischen Events, musst du nur noch einmalig den Inhalt des Typedefs ersetzen.
Hallo Kasi,

vielen Dank für den Tipp, das werde ich nachher gleich mal ausprobieren.

Mich interessiert noch folgendes - wenn ich die Referenz so einmal erstellt hab - als TypDef, die ich dann anderswo auch verwende, muss ich dann diese z.B. im SubVI als Eingabeelement mit einem Anschluss verbinden, um dann vom HauptVI daran die Referenz zu übergeben - oder aber stecken in dieser Referenz dann alle Informationen drin, so dass das dann nicht mehr nötig ist und ich aus dem HauptVI aus dann nicht mehr die Ereignisregistrierung mit dem SubVI verkabeln brauche?
(15.05.2013 07:34 )Hasenfuss schrieb: [ -> ]wenn ich die Referenz so einmal erstellt hab - als TypDef, die ich dann anderswo auch verwende, muss ich dann diese z.B. im SubVI als Eingabeelement mit einem Anschluss verbinden, um dann vom HauptVI daran die Referenz zu übergeben - oder aber stecken in dieser Referenz dann alle Informationen drin, so dass das dann nicht mehr nötig ist und ich aus dem HauptVI aus dann nicht mehr die Ereignisregistrierung mit dem SubVI verkabeln brauche?

hehe, sorry, ich hab das jetzt dreimal gelesen und noch immer nicht ganz die Frage verstanden... es ist noch zu früh am morgen und du machst zu viele Nebensätze ;-p

Ich beantworte, was ich als Frage verstanden habe:
"Ist es dann noch nötig, im Hauptvi die Event Refnum mit dem Typedef zu verkabeln?"
Nein. Der Inhalt des Typedefs muss die aktuelle Refnum sein - und das muss bei einer Änderung der Events stets manuell geschehen (also Bedienelement erstellen, in die Typedef kopieren und ersetzen, speichern). Die Verkabelung im Hauptvi ist damit überflüssig (schadet aber auch nicht).
Hallo Hasenfuss,

ich meine, du solltest verkabeln. Eine Typdefinition macht genau das: einen Datentyp definieren. Eine Typdefinition transportiert für sich allein noch nicht den Wert dieses Datentyps!

Außerdem: wenn du eine neue Referenz erstellst und in die Typdefinition kopierst, hat diese ja noch keinen Wert - den bekommt si ja erst beim Starten des VIs zugewiesen...
(15.05.2013 10:16 )GerdW schrieb: [ -> ]Außerdem: wenn du eine neue Referenz erstellst und in die Typdefinition kopierst, hat diese ja noch keinen Wert - den bekommt si ja erst beim Starten des VIs zugewiesen...

Oh, das stimmt wohl... hatte den "Referenz-Gedanken" bei der Sache vergessen. Also, ich nehme alles zurück und behaupte das, was Gerd sagt.
Ich danke Euch beiden, dass Ihr Euch Zeit genommen habt, meine Fragen zu beantworten und mir so weitergeholfen habt.
Bis jetzt ging meine Frage ja dahin, wenn ich die Auswertestruktur in einem separaten VI habe, in dem ein Ereignis verarbeitet wird.

Meine Frage jetzt ist, ob es möglich ist, ein Ereignis aus mehreren VIs heraus auszulösen. Was ich dazu benötige, ist die Referenz eines jeden Ereignisses, dass ich mit "Benutzerereignis erstellen" erzeugt hab. Mit dieser Referenz gehe ich an den Block "Ereignisse registrieren", aber auch zu zu dem Block "Ereignis erzeugen".

Aus dem Block "Ereignisse registrieren" kann ich leider nicht mehr die einzelnen Referenzen zu den jeweiligen Benutzerereignissen herauslesen (in Schreiben ändern funktioniert bei den Anschlüssen nicht).

Aber ich habe kein Beispiel-VI gefunden, in dem z.B. ein Event in drei SubVIs erzeugt werden kann und im 4. SubVI die Auswertung erfolgt, sondern in den Beispielen werden stets die Ereignisse in dem HauptVI erstellt und die Referenz vom "Ereignis registrieren" übergeben.

Gibt es eine Möglichkeit, dass auch in SubVIs zu bewerkstelligen?
Hallo Hasenfuss,

speicher doch die Ereignisreferenzen in einer FGV/AE. Die rufst du dann auch auf, wenn du ein Ereignis erzeugen willst...
Hallo GerdW,

danke für Deine Antwort, dass werde ich nachher gleich umsetzen.
Seiten: 1 2
Referenz-URLs