LabVIEWForum.de - Subpanels blockieren sich gegenseitig...

LabVIEWForum.de

Normale Version: Subpanels blockieren sich gegenseitig...
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Liebe LabVIEWExperten (oder die, die es werden wollen),

ich hätte da mal gern ein Problem und versuche es irgendwie in Worte zu fassen:

Von einem Hauptprogramm lade ich je nach Anzahl der Peripherie 1-3 Vi-Templates (.vit) in die dafür vorgesehenen Subpanels.
Das realisiere ich über ein For-Schleife, die über die Anzahl der Peripherie-Elemente läuft und die Vit's in die Subpanels lädt und ausführt. Das funktioniert alles prima und es gibt keinen Grund da zu meckern. Nur ist das dumme Problem, dass wenn ein Vit-1 ein neues Fenster (es ist ebenfalls ein Vit) aufgerufen hat (es ist nicht modal!), das andere Vit-2 nicht direkt reagiert.
Bzw. es ist so, dass alles Klicks erst angenommen werden, wenn ich das Fenster vom Vit-1 geschlossen habe.

Das komische ist ja, dass wenn ich Vit-1 und Vit-2 nicht in einem Subpanel aufrufe, die Klicks direkt angenommen werden und von beiden Vit's Fenster mit weiteren Vit's geöffnet werden können.

Muss man bei dem Subpanel noch irgendwelche Properties setzen?! Wie ich derzeit die Subpanels fülle seht ihr im Screenshot.

Vielen Dank schon mal für eure Hilfe!

Martin

PS: Bei dem Vit, welches nicht das Fenster geöffnet hat läuft das Timeout übrigens weiter (es ist also kein Lock darauf...)???
Hi,

ich kenn mich mit SubPanels nicht die Bohne aus....könnte es aber sein, dass es an den VIT's liegt? Musst du evtl. VI's aufrufen...weil VIT's evtl. "gesperrt" sind?

Gruss
A.
' schrieb:Hi,

ich kenn mich mit SubPanels nicht die Bohne aus....könnte es aber sein, dass es an den VIT's liegt? Musst du evtl. VI's aufrufen...weil VIT's evtl. "gesperrt" sind?

Gruss
A.

Danke für den Anstoß Achim!

ich muss aber Vit's aufrufen, weil die Peripherie (es sind 1-3 Kameras) jeweils das Gleiche ist und ich nicht 3 mal das gleiche in LabVIEW zeichnen möchte...Ich dachte Vi's können generell nur einmal aufgerufen werden, oder?

Fragen über FragenSmile
Für diesen Fall musst du in LV das VI als "reentrant" speichern, dann wird jeweils eine neue Instanz des VI's aufgerufen. Nachteil: Du kannst das VI nicht mehr debuggen, weil du nie weißt, welche Instanz grade wirklich abgearbeitet wird! Darum ist das Debugging automatisch deaktiviert!

Reentrant Execution: VI Properties >> Execution >> Reentrant Execution

Oder du machst drei Kopien deines VI's (MeinVI_1.vi, MeinVI_2.vi, etc.), das ist aber für die Codepflege nicht grade förderlich...

A.
' schrieb:Für diesen Fall musst du in LV das VI als "reentrant" speichern, dann wird jeweils eine neue Instanz des VI's aufgerufen. Nachteil: Du kannst das VI nicht mehr debuggen, weil du nie weißt, welche Instanz grade wirklich abgearbeitet wird! Darum ist das Debugging automatisch deaktiviert!

Reentrant Execution: VI Properties >> Execution >> Reentrant Execution

Oder du machst drei Kopien deines VI's (MeinVI_1.vi, MeinVI_2.vi, etc.), das ist aber für die Codepflege nicht grade förderlich...

A.

ne, das geht leider auch nicht.
Er sagt, dann, dass er das Vi nicht einfügen kann, weil es schon geöffnet ist...Sad
' schrieb:ne, das geht leider auch nicht.
Er sagt, dann, dass er das Vi nicht einfügen kann, weil es schon geöffnet ist...Sad

hängt es vielleicht irgendwie an den Execution Einstellungen der Vit's zusammen? Wo sind die Experten, die sich damit richtig auskennen?Smile
Referenz-URLs