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 

Gestaltung einer Benutzeroberfläche mit Graphen



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!

12.05.2013, 16:57
Beitrag #11

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Gestaltung einer Benutzeroberfläche mit Graphen
Origin ist die Eigenschaft eines "Panes" eines VIs, du suchst bisher an der falschen Stelle:
   
Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
12.05.2013, 17:25 (Dieser Beitrag wurde zuletzt bearbeitet: 12.05.2013 17:30 von Hasenfuss.)
Beitrag #12

Hasenfuss Offline
LVF-Stammgast
***


Beiträge: 331
Registriert seit: Dec 2012

2012
2012
DE



RE: Gestaltung einer Benutzeroberfläche mit Graphen
Hi jg,

vielen Dank für Deine Antwort. Ich hätte das ohne Deine Hilfe wohl nie gefunden.
Hallo GerdW,

vielen Dank für Deinen Hinweis zu den benutzerdefinierten Events.

Zitat:Nein, es reicht aus, benutzerdefinierte Events anzulegen. Es gibt Beispiele dazu...

Das ist etwas ganz neues, was ich bisher noch nicht kannte.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
12.05.2013, 21:24
Beitrag #13

Hasenfuss Offline
LVF-Stammgast
***


Beiträge: 331
Registriert seit: Dec 2012

2012
2012
DE



RE: Gestaltung einer Benutzeroberfläche mit Graphen
Dank Eurer Hilfe hab ich es geschafft, ein SubVI in einem SubPanel einzubinden und mit dem Ergebnis bin ich sehr zufrieden. Dafür möchte ich mich nochmal bei Euch bedanken.

Eine Frage hab ich aber noch - es geht um die Referenz des SubVIs. Das Programm soll später compiliert werden. Wenn ich die Funktion "Statische VI-Referenz (Funktion)" verwende und dort das VI-Piktogramm hineinschiebe - ist dann das Compilieren des Hauptprogrammes später so möglich oder könnte es Probleme geben, auf die ich an dieser Stelle schon achten muss? Oder ist es besser, mit Pfaden zu arbeiten? Bei der von mir gewählten Variante hätt ich den Vorteil, wenn ich den Namen mit dem Projektexplorer verändere oder in ein anderes Verzeichnis verschiebe, dann passt der die Pfade meiner Meinung nach automatisch an, bin mir da grad aber nicht so sicher.


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.05.2013, 07:17
Beitrag #14

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


Beiträge: 4.222
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
RE: Gestaltung einer Benutzeroberfläche mit Graphen
Hi,
als Alternative zu den SubPanels könntest du die Graphen auch auf nem großen TabControl mit X Seiten platzieren...und das TabControl dann "transparent" machen und die Reiter ausblenden.

Nachteil: Du musst den zugehörigen Code für die verschiedenen Seiten im Haupt-VI verwalten...

A.

"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
13.05.2013, 07:44
Beitrag #15

GerdW Offline
______________
LVF-Team

Beiträge: 17.423
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Gestaltung einer Benutzeroberfläche mit Graphen
Hallo Hasenfuss,

Zitat:Wenn ich die Funktion "Statische VI-Referenz (Funktion)" verwende und dort das VI-Piktogramm hineinschiebe - ist dann das Compilieren des Hauptprogrammes später so möglich oder könnte es Probleme geben, auf die ich an dieser Stelle schon achten muss?
Statische Referenzen gelten als Abhängigkeit und werden mit in die EXE kompiliert (gesundes Halbwissen meinerseits...).

Zitat:Oder ist es besser, mit Pfaden zu arbeiten?
Jein. Kommt drauf an...
Per Pfad nachgeladene VIs gelten nicht als Abhängigkeit ("Dependency") und müssen vom Programmierer selbst in die EXE inkludiert (oder aus einem definierten Verzeichnis nachgeladen) werden. Du hättest den Vorteil, dass du solche subVIs nachträglich ändern kannst, ohne die EXE neu zu kompilieren...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.05.2013, 10:59 (Dieser Beitrag wurde zuletzt bearbeitet: 13.05.2013 11:01 von Hasenfuss.)
Beitrag #16

Hasenfuss Offline
LVF-Stammgast
***


Beiträge: 331
Registriert seit: Dec 2012

2012
2012
DE



RE: Gestaltung einer Benutzeroberfläche mit Graphen
Ich habe es jetzt so hinbekommen, dass ich ein SubVI in einem Unterpanel einbinden und starten kann. Starten tue ich es so wie hier auf dem Schaubild. Ich habe nicht - wie zuerst - den Methodenknoten VI ausführen genommen, weil dort in der Hilfe stand, dass asynchrones Aufrufen besser sein sollte. Das Hauptprogramm ist nämlich an dieser Stelle immer hängen geblieben und ging nicht weiter. Dann gab es dort die Möglichkeit "Warten bis beendet" umzuschalten, dort aber dann der Hinweis mit dem asynchronen Aufruf. Beende ich mein Hauptprogramm, dann geht auch das VI aus dem Unterpanel weg. Starte ich das Hauptprogramm erneut, dann erscheint zwar das SubVI jedoch scheint das SubVI nicht beendet worden zu sein, sondern es verharrte so im Speicher, obwohl ich im HauptVI einen Melder "Beenden" habe, der eigentl. hätte dafür sorgen müssen, dass alle Schleifen in dem SubVI dann auch beendet werden sollten.

Den Quellcode im Blockdiagramm zum Einbinden des VIs in das Unterpanel im Hauptprogramm habe ich auch in einem SubVI ausgelagert.

Meine Frage - gibt es die Möglichkeit, ein SubVI auch zu beenden - wie asynchrones Aufrufen? Es gibt zwar noch im Methodenknoten VI abbrechen, dort steht aber in der Hilfe, dass das nur für Hauptprogramme funktioniert und bei SubVIs:

" ... Bricht die Ausführung eines Haupt-VIs ab.

Diese Methode gibt den Fehler 1000 aus, wenn sie für ein SubVI aufgerufen wird. Anderenfalls entspricht diese Methode in etwa dem Betätigen der Schaltfläche Ausführung abbrechen in der Symbolleiste.
..."

Also scheint diese Funktion dafür nicht geeignet zu sein.

Da das SubVI also noch im Speicher hängt - ist das ein Hinweis darauf, dass eine Schleife vlt. doch noch nicht richtig beendet wurde? Oder gibt es noch andere Ursachen?

PS: In dem Bild ist auch die Methode "VI Abbr." vorhanden, die hab ich aber nur kurz eingefügt, um an den Hilfetext zu kommen.


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.05.2013, 11:54 (Dieser Beitrag wurde zuletzt bearbeitet: 13.05.2013 11:54 von GerdW.)
Beitrag #17

GerdW Offline
______________
LVF-Team

Beiträge: 17.423
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Gestaltung einer Benutzeroberfläche mit Graphen
Hallo Hasenfuss,

das "Abbrechen" eines VIs ist doch immer unsauber...
Kannst du nicht eine (F)GV/Notifier/o.ä. nehmen, um dem subVI mitzuteilen, dass es sich sauber (!) beenden soll?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
14.05.2013, 07:55 (Dieser Beitrag wurde zuletzt bearbeitet: 14.05.2013 07:56 von Hasenfuss.)
Beitrag #18

Hasenfuss Offline
LVF-Stammgast
***


Beiträge: 331
Registriert seit: Dec 2012

2012
2012
DE



RE: Gestaltung einer Benutzeroberfläche mit Graphen
Hallo GerdW,

Du hast recht, "unsauberes Beenden" ist nicht schön. Das SubVI hat auch einen Zustandsautomaten mit einer Eventstruktur. Leider hing die Schleife in der Eventstruktur immer noch fest und hat auf ein Ereignis gewartet, denn mit einem Notifer konnte ich kein Event auslösen. Ich hatte zwar ein manuelles Beenden per Knopf in dem SubVI, diesen Knopf hab ich aber unsichtbar gemacht, weil ich den beim Einfügen in das Unterpanel des Hauptprogramms nicht haben wollte. Dank Deines Hinweises konnte ich Erfahrungen mit den Benutzerereignissen sammeln und ich habe parallel zu dem Beenden-Knopf ein Benutzerereignis Beenden eingebaut, auf das das SubVI nun auch reagiert und seine Prozesse sauber beendet - und seit dem funktioniert alles wunderbar. Vielen Dank für Deine Hilfe und die Hilfe all der anderen :-), die mich auch mit Tipps und Hinweisen untersützt haben.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
14.05.2013, 08:47
Beitrag #19

Hasenfuss Offline
LVF-Stammgast
***


Beiträge: 331
Registriert seit: Dec 2012

2012
2012
DE



RE: Gestaltung einer Benutzeroberfläche mit Graphen
Dank Eures Hinweis mit den Trennbalken habe ich es jetzt binbekommen, einen Graphen dort hineinzusetzen, der verschiebbar ist. Durch das Setzen einer Mindestgröße kann ich verhindern, dass der Graph zu klein wird.

Der eigentliche Graph ist aber in einem SubVI. Das UnterPanel ist soweit auch so, dass es sich in der Größe anpasst. Leider passt sich nun nicht der Graph in dem SubVI mit an. Wie kann ich das hinbekommen? Mein erster Ansatz geht nun dahin, dass ich die aktuelle Größe nach einer Verschiebeaktion des UnterPanels ermitteln könnte und dann unter Zuhilfenahme des Eigenschaftknotens "Maße-Bereichshöhe/Bereichsbreite) vom Graphen die aktuelle Größe setze. Dann muss ich aber die Werte zwischen SubVI und HauptVI wieder hin- und herschieben - geht auch wieder über glob. Variablen .... Habe ich in dem SubVI aber wieder eine Eventstruktur, dann müsste ich entweder in einer neuen Schleife durch Pollen regelmässig die aktuelle Größe aktualisieren oder mittels eines Benutzerevents in dem SubVI einen State auslösen, der die Anzeigengröße anpasst.

Gäbe es noch eine anderere Möglichkeit?


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
14.05.2013, 08:53
Beitrag #20

GerdW Offline
______________
LVF-Team

Beiträge: 17.423
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Gestaltung einer Benutzeroberfläche mit Graphen
Hallo Hasenfuss,

das Subpanel zeigt nur ein FP (bzw. einen Ausschnitt davon!) eines anderen VIs an. Ich persönlich würde nicht wollen, dass sich auf dem FP dieses anderen VIs etwas ändert, weil sich der gezeigte Ausschnitt ändert...

Andere Idee:
Du zeigst immer nur Graphen in diesem Subpanel an? Dann trenne doch Anzeige und Rechnung voneinander! Ein Graph (ohne Subpanel), der immer Daten aus einer (F)GV o.ä. anzeigt. Und beliebige subVIs im Hintergrund, die Daten bereitstellen - ohne direkt ins MainVI per Subpanel eingebunden zu sein...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Gehe zu: