LabVIEWForum.de - SubVI immer im Vordergrund

LabVIEWForum.de

Normale Version: SubVI immer im Vordergrund
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Mahlzeit,

ich habe folgendes Problem...

ich habe ein Prüfprogramm geschrieben was unsichtbar im Hintergrund läuft. In einem bestimmten Fall des Prüfprogramms soll eine Fehlermeldung ausgegeben werden. Es wird quasi ein SubVI gestartet auf dessen FP Anweisungen stehen.

Ist es möglich dieses SubVI IMMER im Vordergrund zu lassen? und zwar nicht nur LV-Intern sondern unter Windows....d.h. es soll unmöglich sein ein quittieren dieses SubVI´s zu umgehen... z.B: durch Programmwechsel über die Taskleiste oder Alt+Tab.

Jemand ne Idee? Hab irgendwie nichts gefunden in dieser Richtung

Gruß
StabSH
Invoke -> Bring to front

[attachment=40144]

Die Ränder flackern bei mir in Windows 7 nervös rum, aber was solls, das erhöht nur den gewollten Nerv-Faktor Wink
- whoops, an das Minimalbeispiel gehört natürlich eine "false"-Konstante an die Abbruchbedingung (oder gar ein Knopf, LANGWEILIG!), aber die Idee bleibt die gleiche.
Es ist abhängig von der Eigenschaft des VIs, kann man mit Methodenknoten(oder Eigenschaftsknoten) definieren. Big Grin
Kasi hat recht, glaube ich.
Grüß
Hallo,

sorry dass ich diesen alten Thread rausziehe, aber er passt genau zu meinem Problem und leider hat der Ersteller nicht geschrieben ob es bei ihm funktioniert hat.

Bei mir funktioniert es leider nicht. Iwill
Das FP wird nur innerhalb der LV Anwendung in den Vordergrund gelegt, aber wenn ich ein anderes Programm öffne (z.B. wie in meinem Fall Diadem und ein anderes Messprogramm) bleibt mein FP im Hintergrund.

Gruss Tobi

P.S. Wie kann ich denn solche Bilder einfügen wie Kasi? Denn leider kann ich keine VI's anhängen (durch unsers EDV gesperrtSad )
Garantiert funktionieren müsste es mit der Eigenschaft "modal" in:
Rechte Maustaste auf Ikon --> VI-Eigenschaften
--> Fenstererscheinungsbild --> Benutzerdefiniert --> anpassen --> Verhaltensweise des Fensters
Zitat:Garantiert funktionieren müsste es mit der Eigenschaft "modal" in:
Rechte Maustaste auf Ikon --> VI-Eigenschaften
--> Fenstererscheinungsbild --> Benutzerdefiniert --> anpassen --> Verhaltensweise des Fensters

Hatte ich bereits versucht, aber es funktioniert nicht. Das Fenster flackert zwar solange LV im Vordergrund ist, wenn ich aber in der Taskleiste oder Desktop ein anderes Programm anwähle wird es nicht mehr in den Vordergrund gesetzt.

Mir ist aber aufgefallen, dass der Eigenschaftsknoten des Vi's "Frontpanel-Fenster -> Ist im Vordergrund" auf True bleibt auch wenn es im Hintergrund ist. Nur wenn sich die Fenster innerhalb LV ändern, ändert sich auch der Eigenschaftsknoten.
Keine Ahnung, was bei Einstellung "modal" passiert, wenn gleichzeitig noch Eigenschaftsknoten im Programm das Vi in den Vorder/Hintergrund bringen möchten, wie das hier der Fall zu sein scheint. Was soll das denn überhaupt? Flackern habe ich überhaupt noch nicht erlebt, aber es gibt wohl Programmierkünstler, die das schaffen.

In der LV-Hilfe steht zum Stichwort modal das hier:

Modal—Belässt das Frontpanel so lange im Vordergrund, bis Sie es schließen oder ein anderes modales Fenster öffnen. Während ein modales Fenster geöffnet ist, kann kein anderes Fenster bedient werden. Die meisten Dialogfelder in LabVIEW sind modale Fenster, wie zum Beispiel Optionen. (Mac OS X) Bei Auswahl von Modal ignoriert das Betriebssystem die Einstellung für Schließen, Minimieren und Maximieren.
Das Flackern bezog sich nur auf den Fensterrand und kommt daher, dass ich in einer Schleife ca. alle 250ms mein FP auf genau die Art wie es weiter oben im Bild von Kasi zusehen ist in den Vordergrund setzen möchte. Damit im Falle, dass der Bediener das Fenster der Messsoftware (nicht Labview) anklickt oder durch eine Meldung selbiger der Tastaturfokus auf diese Fenster gesetzt wird, mein FP wieder in den Vordergrund rückt und dadurch wieder im Tastaturfokus liegt.

Wenn nämlich der Tastaturfokus bei der Messsoftware liegt und der Bediener nicht darauf achtet, bricht diese beim drücken von Enter die Aufzeichnung ohne speichern ab aber der Prüfvorgang läuft weiter, deshalb muss Labview immer im Vordergrund bleiben egal was der Bediener macht.

Leider funktionert die Einstellung "Modal" (zumindest bei mir) nur im Bezug auf FP innerhalb Labview und nicht im Bezug auf andere geöffnete Fenster.
Was muss ich aber machen damit mein FP immer im Tastaturfokus liegt, denn mit dem Applikation-Methodenknoten "Bring to Front" funktioniert es bei mir nicht.

Hatte bisher noch nie jemand ein solches Problem oder wie habt ihr das gelöst?
(06.12.2012 14:22 )Keppi schrieb: [ -> ]P.S. Wie kann ich denn solche Bilder einfügen wie Kasi? Denn leider kann ich keine VI's anhängen (durch unsers EDV gesperrtSad )

Im Blockdiagramm kann man seit LabVIEW 2009 sogenannte Snippets (Bilder von Code-Schnipseln) erstellen (wie genau das geht, ist zum Beispiel hier erläutert). Diese kannst du dann lokal speichern und hier im Forum mittels Attachements hochladen.

Zur Problematik: musste gerade feststellen, dass es bei mir auch nicht immer funktioniert. Ich schau mal, ob ich noch ne brutalere Methode finde.

***edit***
Alright, this should do the trick:
[attachment=42555]
Zitat:Im Blockdiagramm kann man seit LabVIEW 2009 sogenannte Snippets (Bilder von Code-Schnipseln) erstellen (wie genau das geht, ist zum Beispiel hier erläutert). Diese kannst du dann lokal speichern und hier im Forum mittels Attachements hochladen.

Danke, das mit den Bilder funktioniert zwar, aber leider kann ich Aufgrund von Sicherheitseinstellungen Seitens unserer EDV keine Attachments anfügen. Angry

Wenn das mit dem Code den du angefügt hast bei dir funktioniert, muss es einen Unterschied zwischen LV2009 und LV2012 geben. Denn bei mir funktioniert es nur unter den LV-Fenster. Aber trotzdem Danke.

Ich sollte vielleicht noch dazu sagen, dass es nicht nur darum geht, dass das Fenster im Vordergrund sichtbar ist, sonder auch der Tastaturfokus drauf liegt.
Referenz-URLs