22.06.2010, 10:42
Beitrag #1
|
Matze
LVF-Team
Beiträge: 1.027
Registriert seit: Apr 2010
20xx
2010
DE_EN
7xxxx
Deutschland
|
Ereignisstruktur etc. in SubVI auslagern?
Hallo zusammen,
ich habe mir einen Editor programmiert, der Bedien- und Anzeigeelemente sowie eine Ereignisstruktur (zur Abfrage, ob Schaltflächen gedrückt wurden etc.) enthält.
Der Editor liefert mir einen Cluster mit Daten zurück.
Nun möchte ich den Editor gerne in mehreren Programmen verwenden und den zugehörigen Code nicht immer aus dem Blockdiagramm kopieren müssen. Bei Änderungen steigt der Wartungsaufwand sonst enorm und die Fehleranfälligkeit ebenfalls.
Schön wäre es, wenn das Ganze in ein SubVI o.ä. ausgelagert werden könnte.
Das führt zu einem übersichtlichen Blockdiagramm und Anpassungen des Editors werden in sämtlichen Programmen übernommen, die diesen verwenden.
Gibt es hier eine saubere Lösung oder stoße ich hier an die Grenzen von LabVIEW, da die Benutzeroberfläche hier verwendet wird?
Freundliche Grüße
Matze
|
|
|
22.06.2010, 10:58
Beitrag #2
|
GerdW
______________
Beiträge: 17.469
Registriert seit: May 2009
LV2021
1995
DE_EN
10×××
Deutschland
|
Ereignisstruktur etc. in SubVI auslagern?
Hallo Mechatroniker,
was spricht dagegen, eben diesen Editor als subVI zu verwenden? Falls kein eigenes Fenster geöffnet werden soll, kannst du den ja auch per Subpanel einbinden...
Alternativ:
Schau dir an, wie XControls erstellt werden. Die kann man auch in andere VIs einbinden...
|
|
|
22.06.2010, 11:06
Beitrag #3
|
Matze
LVF-Team
Beiträge: 1.027
Registriert seit: Apr 2010
20xx
2010
DE_EN
7xxxx
Deutschland
|
Ereignisstruktur etc. in SubVI auslagern?
Hallo Gernd,
ich kenne bisher nur die normalen SubVIs und die sind dafür weniger geeignet.
SubPanels und XControls sehe ich mir an, danke.
Grüße
|
|
|
22.06.2010, 11:08
Beitrag #4
|
GerdW
______________
Beiträge: 17.469
Registriert seit: May 2009
LV2021
1995
DE_EN
10×××
Deutschland
|
Ereignisstruktur etc. in SubVI auslagern?
Hallo Mechatroniker,
"normalen SubVIs und die sind dafür weniger geeignet"
Könntest du das bitte etwas näher erläutern? Warum sollte ein subVI für einen Editor "weniger geeignet" sein?
|
|
|
22.06.2010, 11:16
Beitrag #5
|
|
|
22.06.2010, 12:31
(Dieser Beitrag wurde zuletzt bearbeitet: 22.06.2010 12:32 von Matze.)
Beitrag #6
|
Matze
LVF-Team
Beiträge: 1.027
Registriert seit: Apr 2010
20xx
2010
DE_EN
7xxxx
Deutschland
|
Ereignisstruktur etc. in SubVI auslagern?
Ähm "normale SubVIs" sind für mich die VIs, die in Programme eingebunden werden, ohne das Frontpanel der SubVIs anzuzeigen. Sicher heißen die offiziell anders.
Also sämtliche SubVIs, die LabVIEW integriert hat wie beispielsweise die ganzen DAQmx-VIs. Ich verwende dessen Anschlüsse und wenn ich einen Wert anzeigen möchte, verbinde ich einen der Ausgänge mit eigenen Anzeigeelementen. D.h. das Anzeigeslement dieser VIs kann ich nicht direkt nutzen, denn die SubVI-Frontpanels sieht man später nicht.
Ich benötige eine Kombination aus Frontpanel und Blockdiagramm, wobei das Frontpanel direkt angezeigt werden soll.
Wenn ich ein Blockdiagramm mit Eregnisstruktur z.B. nachträglich über "Bearbeiten -> SubVI erstellen" in ein SubVI packen möchte, erscheint eine Warnung, dass das Programm möglicherweise nicht lauffähig sein wird (klar, die Bedienelemente fehlen ja bzw. müssten über Referenzen angegeben werden, sofern das bei einer Ereignisstruktur überhaupt möglich ist).
Ich hoffe, das war etwas verständlicher.
|
|
|
22.06.2010, 12:45
(Dieser Beitrag wurde zuletzt bearbeitet: 22.06.2010 12:48 von GerdW.)
Beitrag #7
|
GerdW
______________
Beiträge: 17.469
Registriert seit: May 2009
LV2021
1995
DE_EN
10×××
Deutschland
|
Ereignisstruktur etc. in SubVI auslagern?
Hallo Mechatroniker,
hast du dir schon mal die VI-Properties genauer angeschaut? Die Seite mit den Window-Properties? Da wo man einstellt, ob ein subVI-FP gezeigt werden soll oder nicht? (Und die Position, Größe, Fenster-Titel, ...)
Alternativ kann man auch auf das subVI-Icon im BD des mainVI rechtsklicken und diese einzelne Instanz konfigurieren...
Das sind alles "normale" subVIs - du musst nur konfigurieren, ob's FP gezeigt wird oder nicht
Erstelle den Editor als eigenständiges VI und binde dieses als subVI woanders ein!
|
|
|
22.06.2010, 12:51
Beitrag #8
|
|
|
22.06.2010, 13:00
(Dieser Beitrag wurde zuletzt bearbeitet: 22.06.2010 13:01 von Matze.)
Beitrag #9
|
Matze
LVF-Team
Beiträge: 1.027
Registriert seit: Apr 2010
20xx
2010
DE_EN
7xxxx
Deutschland
|
Ereignisstruktur etc. in SubVI auslagern?
Diese Option finde ich in den zahlreichen VI-Einstellungen nicht. Das sind einfach zu viele. ;-)
Wird denn dann ein neues Fenster angezeigt?
Es wäre schön, wenn ich das Frontpanel z.B. in einen Reiter einer Registerkarte des Haupt-VIs einbinden könnte.
|
|
|
22.06.2010, 13:04
(Dieser Beitrag wurde zuletzt bearbeitet: 22.06.2010 13:06 von GerdW.)
|
GerdW
______________
Beiträge: 17.469
Registriert seit: May 2009
LV2021
1995
DE_EN
10×××
Deutschland
|
Ereignisstruktur etc. in SubVI auslagern?
Hallo Mechatroniker,
mal ein Auszug aus der LabVIEW-Hilfe... (Weiterlesen bei Customize Window Appearance und Show frontpanel when called)
Ein Fenster ist immer das Ding mit dem Rahmen drumherum und diversen Knöpfen im Rahmen... Das wirst du schwerlich in ein TabControl einbetten können. Aber dafür gibt es ja Subpanels!
|
|
|
| |