INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Öffnen eines VIs aus einem anderen Frontpanel



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

13.07.2006, 15:35
Beitrag #11

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Öffnen eines VIs aus einem anderen Frontpanel
Hab gerade gesehen, dass wenn man das FP öffnet, das SubVI doch nicht startet.
Habe auch umgekehrt probiert mit RunVI, und bei Einstellungen Show FP when called angeklickt. Funktioniert aber auch nicht.

Also es bleibt nur noch beides über Nodes zu machen (FP Öffnen und das VI starten).

Gruss

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.07.2006, 15:39 (Dieser Beitrag wurde zuletzt bearbeitet: 13.07.2006 15:40 von Achim.)
Beitrag #12

Achim Offline
*****
*****


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
Öffnen eines VIs aus einem anderen Frontpanel
@ eugen graf:

Es gibt hier aber keine Static VI Referenz auf das zu öffnende VI, eben weil es nicht mit dem gesamten Code geladen wird, sondern erst bei Bedarf (dynamisch), und auch wieder komplett aus dem Speicher entfernt wird, wenn es geschlossen wird! Da das VI nicht bei Programmstart geladen wird, geht das "Aufstarten" der Applikation schneller. Das kommt natürlich nur bei vielen solchen VI zum tragen! Und die VI's laufen nur dann, wenn sie wirklich gebraucht werden, was die CPU entlastet! Und sollte es ja auch sein: Nur notwendige Applikationen/Anzeigen sollten laut Anforderung laufen, insbesondere da das völlig eigenständige Programme sind, die nur über das Haupt-VI "verwaltet" werden!

Das mit dem Methodenknoten hab ich deswegen drin, um immer zu wissen, was ich eigentlich mache! Klar geht das auch über die VI Einstellugen. Aber: Das VI läuft dann nicht sofort, wenn ich's mal zum editieren will öffnen will, z.b. für ne Aktualisierung! Wenn man das öfters machen muss, ist das ständige Ausschalten ganz schön nervig! Sollte dann auch noch wie in nem Dialog die Leiste verborgen sein, und ein Stop-Button gar nicht vorhanden sein (weil's z.b. ne selbst-quittierende Meldung ist), müsste man schon mit STRG + . stoppen, wenn mans aus irgendwelchen Gründen (z.b. weil das schon jeder "Blindbenutzer" kennt) deaktiviert hat...tjaha, man hat so seine Gründe ;-)....ist alles schon vorgekommen!

EDIT: Hab grad eugens post gelesen: Das kriegt man aber hin mit dem starten über die VI einstellungen! EDIT end

Feierabend!

Gruss
Achim

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.07.2006, 09:53
Beitrag #13

iwf Offline
LVF-Neueinsteiger


Beiträge: 1
Registriert seit: Jul 2006

8.00
2006
kA


Oesterreich
Öffnen eines VIs aus einem anderen Frontpanel
Ola!

Zuerst einmal Hallo an alle, die hier gepostet haben! Ich hatte anfangs auch das Problem, verschiedene VIs mit dem Wunsch, über Buttons aufzurufen. Nun klappt das auch, danke Lol
Jedoch brauch ich noch eine kleine Hilfe hierzu: Ich steuere mit diesem VI kleinere VIs an, die auf einen HP Logikanalysator via VISA/GPIB zugreifen. Bei jedem dieser kleinen Unter-VIs muss ich jedoch immer wieder das Gerät auswählen, auf das ich zugreifen möchte (via Dropdownmenü). Nun hab ich mir gedacht, dass man das so machen könnte, dass ich im Haupt-VI das Gerät auswähle und es als Variable an die Unter-VIs weitergebe. Wie kann ich das jedoch anstellen? Sad

Danke!
IWF
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.07.2006, 10:15 (Dieser Beitrag wurde zuletzt bearbeitet: 18.07.2006 10:17 von Achim.)
Beitrag #14

Achim Offline
*****
*****


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
Öffnen eines VIs aus einem anderen Frontpanel
Hi,

das sollte entweder über ne globale Variable oder über ne Umgebungsvariable (ab LV8) funktionieren. Im "HauptVI" schreibst du da den Namen z.b. in ne String-Variable und in den jeweiligen "UnterVI" liest du das wieder aus...schau dir die Hilfe in LV an, wie diese Variablentypen funktionieren!

Gruss
Achim

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.10.2006, 09:52 (Dieser Beitrag wurde zuletzt bearbeitet: 23.10.2006 09:53 von Lucki.)
Beitrag #15

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
Öffnen eines VIs aus einem anderen Frontpanel
' schrieb:kopiere dir die drei VI mal in einen gemeinsamen Ordner, und starte das "neu_Menu_Vi.vi"...
Hat mich auch interessiert, sehr gut. Mich würde interessieren, wie Deine Lösung aussehen würde, wenn die Anforderung folgendermaßen modifiziert würde:
a) Bei geöffnetem SUB-VI soll am Hauptprogramm nichts mehr bedient werden dürfen. (Das Ereignis ist solange nicht beendet, solange das Sub-VI geöffnet ist)
b) Bei Schließen des Sub-VIs sollen Werte aus dem Sub-Vi an des Hautprogramm übergeben werden.
Bei direkten Aufruf des SUB-VIs aus dem Ereignis heraus hat man diese Eigenshaften quasi kostenlos, aber Dir wird wohl auch so eine elegante Möglichkeit einfallen, wie man das in Deinem Beispiel macht.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.10.2006, 10:37
Beitrag #16

Achim Offline
*****
*****


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
Öffnen eines VIs aus einem anderen Frontpanel
Hi Lucki,

um das HauptVI zu sperren kann man das SubVI "modal" definieren, d.h. kein anderes VI kann mehr bedient werden. Das geht dann natürlich nur, wenn man nur ein SubVI auf die von mir gezeigte Art öffnet. Ansonsten fällt mir so auf die schnelle auch nichts ein...aber: Wenn auf dem Haupt-Panel nichts mehr verändert werden darf: Wann soll diese Sperrung erfolgen? Nach dem öffnen von SubVI Nr.1? Dann kann ich weitere SubVIs ja eh nicht mehr öffnen und die "Öffnen"-Funktionalität für die anderen VIs wäre für die Katz! Und dies gilt ja grundsätzlich! Egal wie mans macht: Wenn ein VI eine Sperrung veranlasst, kann man mit den anderen nichts mehr anfangen. Alternativ könnte man aber einzelne Controls in "NachbarVIs" über ihre Referenz auf "Disabled" schalten, wenn das durch ein SubVI angefordert würde.

Die Sperrung könnte man auch noch dadurch erreichen, dass man das Haupt-Panel "hidden" schaltet, sobald das SubVI geöffnet ist...man darf dann halt beim Schließen des SubVIs nicht vergessen, das HauptVI wieder hervorzuholen!

Der Zweck dieses Beispiels war ja auch ein anderer: Es sollten unabhängige VIs gestartet werden, das HauptVI ist hier nur als "Verwaltungswerkzeug" gedacht. Die Datenübergabe nach VI-Ende könnte man über globale Variablen oder auch ne Queue machen.

Natürlich hast du recht: Wenn man direkt aus dem HauptVI aufruft, kriegt man die Sperrung und die Übergabe von Daten leichter hin. Aber dafür muss das Hauptprogramm halt auch auf das Beenden des SubVI warten.

Gruss
Achim

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
23.10.2006, 17:14
Beitrag #17

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
Öffnen eines VIs aus einem anderen Frontpanel
@Achim
Du hast vollkomen recht, der Zweck der Übung hier war ein ganz anderer: es war gerade beabichtigt, wmehrere unabhängige Vo zu offenen.

Aber in mindestens gleicher Häufigkeit steht die Forderung an, daß jeweils nur ein Sub-VI geöffnet werden soll und nichts anderes möglich sein soll, bevor nicht das betreffende Sub-VI bedient und beendet wurde.
Beispiel. Meßplatz für irgendwas, es werden nacheinander unterschiedliche Parameter am Objekt gemessen, wobei das Objekt jedesmal auch bedient werden muß. Alle Werte sollen protokolliert werden.
Lösung: Vom Hauptprogramm lassen sich die einzelnen (Sub)VIs aktivieren, gewissermaßen als eigene Tasks zur Messung eines Parameters. Bei der Rückkehr ins Hauptprogramm werden die jeweiligen Daten übergeben. Das Hauptprogramm erstellt dann, wenn alle Daten vollständig sind, das Protokoll; es dient auch hier nur gewissermaßen zur Verwaltung.
Anderes Beipiel: Grundeinstellungen vornehmen. Die Grundeinstellungen im Haupt-Vi vozunehmen, und sei es auf einer anderen Registerkartenseite, finde ich nicht ideal. Besser ist ein Schalter "Einstellungen", und der öffnet dann ein eigenes VI, wobei es auch keinen Sinn macht, wenn man während der Bedienung dieses VI noch alles mögliche andere machen kann.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.07.2007, 10:15
Beitrag #18

PeterS Offline
LVF-Grünschnabel
*


Beiträge: 13
Registriert seit: Sep 2005

8.2; 7.1
2004
kA

64293
Deutschland
Öffnen eines VIs aus einem anderen Frontpanel
' schrieb:Hi,

das sollte entweder über ne globale Variable oder über ne Umgebungsvariable (ab LV8) funktionieren. Im "HauptVI" schreibst du da den Namen z.b. in ne String-Variable und in den jeweiligen "UnterVI" liest du das wieder aus...schau dir die Hilfe in LV an, wie diese Variablentypen funktionieren!

Gruss
Achim

Im Prinzip geht das aber auch über den Invoke-Node->Control Value->Set...für alle, die ungern mit globalen Variablen arbeiten:-)

Gruss,
Peter
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.07.2007, 10:43
Beitrag #19

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
Öffnen eines VIs aus einem anderen Frontpanel
Das hier ist auch eine Möglichkeit.
Man muss bei "Window Appearance" halt noch "Dialog" einstellen.

Gruß Markus

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.04.2009, 10:43 (Dieser Beitrag wurde zuletzt bearbeitet: 07.04.2009 10:49 von RJ1.)
Beitrag #20

RJ1 Offline
LVF-Grünschnabel
*


Beiträge: 10
Registriert seit: Apr 2009

7.1
-
de

12489
Deutschland
Öffnen eines VIs aus einem anderen Frontpanel
Hi,

ich habe ein ähnliches Problem.
Ich möchte aus einem Hauptprogramm heraus mehrere VIs starten.
Das klappt auch!
Nun sollen aber einige dieser VIs jeweils ein bzw. mehrere AI-Kanäle von einer Karte lesen. Ich habe es nun soweit gebracht (mit zeitgesteuerten Schleifen), dass wenn ich das Timing gut einstelle das Problem des gleichzeitigen Kartenzugriffs zu verdrängen.
Das soll aber keine Dauerlösung bleiben!
Gibt es eine Möglichkeit die DAQmx - Kanäle so abzufragen, dass gleichzeitig geprüft wird ob ein anderer Kartenzugriff vorliegt und somit der Kanal kurzzeitig ausgesetzt wird?

Grüße
Robin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Verschiebungen auf dem Frontpanel bei Portierung eines Projekts auf einen anderen PC Lucki 2 3.271 04.12.2018 18:41
Letzter Beitrag: Lucki
  Abfragen Werte in einem anderen VI handsch21 2 3.441 27.03.2018 10:31
Letzter Beitrag: handsch21
  Absturz bei Öffnen eines sub VI oe-ms1 7 6.097 19.03.2018 06:58
Letzter Beitrag: oe-ms1
  Event Case Ignoriert Tastendruck wenn in Gegenwart eines anderen "Leeren" Event Case Ksanto 8 8.256 23.10.2017 09:08
Letzter Beitrag: Ksanto
  Gruppieren von anderen Frontpanel Elementen mit Tab Control Ksanto 5 5.150 20.09.2017 08:22
Letzter Beitrag: GerdW
  Frontpanel öffnen auf NI myRIO Heiko92 8 6.021 08.05.2017 15:55
Letzter Beitrag: GerdW

Gehe zu: