12.02.2015, 11:33
Beitrag #1
|
|
|
12.02.2015, 11:45
Beitrag #2
|
jg
CLA & CLED
Beiträge: 15.864
Registriert seit: Jun 2005
20xx / 8.x
1999
EN
Franken...
Deutschland
|
RE: TabControl - Tab einfügen
War nicht einfach, dein Problem zu verstehen, aber das Hinzufügen eines neuen Reiters nur in der Typ-Def, das geht halt nicht.
Mögliche, aber funktionierende Lösung:
Du musst das Hinzufügen des neuen Reiters leider 2x machen und nicht nur in der Type-Definition des Controls.
Hierzu wie folgt vorgehen:
- Tab-Control in deinem VI von der Typ-Def trennen.
- Jetzt in der ctl und im VI den neuen Reiter hinzufügen und ctl speichern.
- Tab-Control im VI wieder durch die Typ-Def ersetzen.
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.
|
|
|
12.02.2015, 13:32
Beitrag #3
|
|
|
12.02.2015, 13:47
Beitrag #4
|
jg
CLA & CLED
Beiträge: 15.864
Registriert seit: Jun 2005
20xx / 8.x
1999
EN
Franken...
Deutschland
|
RE: TabControl - Tab einfügen
Bei mir ist kein Coercion-Dot vorhanden.
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.
|
|
|
12.02.2015, 14:11
(Dieser Beitrag wurde zuletzt bearbeitet: 12.02.2015 15:45 von Lucki.)
Beitrag #5
|
Lucki
Tech.Exp.2.Klasse
Beiträge: 7.699
Registriert seit: Mar 2006
LV 2016-18 prof.
1995
DE
01108
Deutschland
|
RE: TabControl - Tab einfügen
Mich stört hier nicht so sehr der Coercion-Dot, als vielmehr dass Du für diese einfache Wertzuweisung statt einer lokalen Variablen den hundertmal langsameren Eigenschaftsknoten verwendest...
|
|
|
12.02.2015, 17:45
Beitrag #6
|
Trinitatis
LVF-Guru
Beiträge: 1.694
Registriert seit: May 2008
7.1 / 8.0 /2014-1, 18
2002
DE
18055
Deutschland
|
RE: TabControl - Tab einfügen
hier noch ein Einfall:
ich weiß nicht, ob das deinem Problem hilft, aber ich hatte mal einen Fall, in dem ich mit verschiedenen Hardwarekomponenten reden wollte, die jeweils verschiedene Software-Module mit jeweils verschiedenen Registern, die zu lesen/schreiben waren, hatten.
Über einen REQ-Befehl konnte ich mir die in der Hardware verfügbaren Module auslesen und habe für jedes Modul ein eigenes VI erstellt. Das FP des jeweiligen VIs habe ich dann jeweils auf einer Karte einer TabControl als SubPanel eingelinkt.
Dazu habe ich mir eine Registerkarte mit 20 Karten erstellt, die jeweils nur das transparente SubPanel beinhalteten. Dann habe ich so viele Karten eingeblendet, wie ich brauchte und in jedes SubPanel das entsprechende VI eingelinkt. Somit hatte ich eine sich dynamisch an den Komunikationsteilnehmer anpassende Software erfunden, die bis heute supi läuft.
Das FP des übergeordneten VIs, in dem die Registerkarte liegt kann man dann standardmäßig geschlossen setzen und erst öffnen, wenn sich alle Unterkarten aufgebaut haben. Das beschleunigt den Kartenaufbau und sieht nicht so flatterhaft aus.
Gruß, Marko
|
|
|
13.02.2015, 08:53
Beitrag #7
|
F.Bi
LVF-Gelegenheitsschreiber
Beiträge: 152
Registriert seit: Oct 2007
LabView 2016
2007
EN
55218
Deutschland
|
RE: TabControl - Tab einfügen
Jens, bei mir kommt immer ein Coercion-Dot.
1. Front Panel vi - Tab Control -> Disconnect from Type-Def.
2. ctl Datei öffnen -> neuer Tab an zweiter Stelle eingefügt -> Beschriftung angepasst
3. Tab Control vi -> neuer Tab an zweiter Stelle eingefügt -> Beschriftung angepasst
4. ctl gespeichert und geschlossen
5. Tab Control vi -> Replace - Control
6. Coercion-Dot
Stimmt da an meiner Vorgehensweise etwas nicht?
Lucki, Local Variable verwende ich nur bei Read.
Marko, klar ist das eine Möglichkeit. Wenn man aber ein Tab mehr benötigt als eingeplant, steht man wieder vor dem gleichen Problem. Man kann zwar über ein Property Node die beschriftung ändern, mache ich zwar auch (Deutsch/Englisch), aber dann passt die Zuordnung bei Constant nicht mehr.
Irgendwie ist das nicht so gut gelöst.
Wenn man ohne Type-Def. arbeitet, muss man, wenn ein Tab umbenannt wird, alle Constant neu anlegen.
Nutzt man Type-Def gibt es das Problem nicht, kann aber nicht so einfach einen neuen Tab an einer bestimmten Stelle einfügen.
|
|
|
13.02.2015, 10:09
Beitrag #8
|
jg
CLA & CLED
Beiträge: 15.864
Registriert seit: Jun 2005
20xx / 8.x
1999
EN
Franken...
Deutschland
|
RE: TabControl - Tab einfügen
(13.02.2015 08:53 )F.Bi schrieb: Lucki, Local Variable verwende ich nur bei Read.
Dieses Vorgehen würde ich an deiner Stelle überdenken, den jedes Setzen einer PropertyNode "Value" eines Controls erzwingt ein Frontpanel-Update. Wenn du das bei allen Controls machst, bremst du ganz extrem die Performance deines VI aus.
Für das (ab und an) Umschalten eines TabControls geht das aber IMHO in Ordnung, denn auch hier habe ich vereinzelt schlechte Erfahrungen gemacht - das Schreiben per lokaler Variable hat nicht zwangsläufig dazu geführt, dass der Reiter auch wirklich umgeschaltet wurde. Da ist das FP-Update der PropertyNode hilfreich.
Zwecks Coercion-Dot: Ja, genauso habe ich es (wenn ich mich richtig erinnere) gemacht, allerdings ohne das Umbenennen von Reitern.
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.
|
|
|
| |