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 

Referenzen von TypeDef-Clustern an SubVIs übergeben



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!

20.08.2007, 02:51
Beitrag #1

Faxe Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: Aug 2007

8
-
kA


Deutschland
Referenzen von TypeDef-Clustern an SubVIs übergeben
Weil ich von einigen SubVIs den Zustand von Aktionen die gerade ausgeführt werden im HauptVI anzeigen will (es sind auch Bedienelemente dabei) habe ich mir eine TypeDef mit dem Namen UserLights mit z.B. 15 LEDs gemacht.
Aber 15 Referenzen an eine SubVI zu übergeben ist doof, deswegen möchte ich also nur eine Referenz auf den TypeDef Cluster UserLights übergeben, um dann in PropertyNodes (strict) auf die gewünschten Elemente und ihre Eigenschaften zu zugreifen.
Ich weiss aber nicht wie ich direkt eine Referenz in der SubVI erzeuge...
Bisher habe ich es so gemacht:
1. Eine Instanz von UserLights einfügen
2. Referenz auf diese Instanz erzeugen
3. Indicator für diese Referenz
4. Indicator in Control ändern
Die so erhaltene Control-Referenz verbinde ich nun mit dem Eingangsconnector der SubVI.
Soweit so gut.
Mache ich aber eine Änderung in der TypeDef von UserLights so wird der entsprechende Indicator nicht mit geupdatet und das von hand in unzähligen SubVIs zu machen ist unmöglich.....
Wie kann ich also die Schritte 1-4 direkt machen also als Referenztyp direkt meine UserLights verknüpfen?

Andere Möglichkeiten einfach einen unbestimmten Cluster zu übergeben und dann in Userlights zu casten bringt keinen so großen Vorteil, weil man die Elemente des Clusters, deren Referenzen unter "Objects" gespeichert sind, als Array indizieren muss und wenn man dann der UserLights ein neues Element an Position Null hinzufügt verschieben sich alle nachfolgenden Indizes und man müsste wieder alles von Hand ändern.

Was gibt es denn sonst noch für Möglichkeiten so viele Anzeige- und Bedienelemente im HauptVI zu steuern.

Vielen Dank im Voraus für Eure Hilfe
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
20.08.2007, 06:27 (Dieser Beitrag wurde zuletzt bearbeitet: 18.12.2007 18:19 von jg.)
Beitrag #2

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


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
Referenzen von TypeDef-Clustern an SubVIs übergeben
Hi,

mit nem kleineren Workaround gehts:

Du musst dein Originalcluster auch im SubVI platzieren und eine Referenz dieses Clusters im SubVI dazu verwenden, die allgemeine Control-Referenz in das SubVI genauer zu spezifizieren...siehe die angehängten VIs

Gruss
Achim

Lv82_img

Sonstige .vi  Cluster.vi (Größe: 10,2 KB / Downloads: 445)

Sonstige .vi  Subcluster.vi (Größe: 11,54 KB / Downloads: 400)

"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
20.08.2007, 17:55
Beitrag #3

Faxe Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: Aug 2007

8
-
kA


Deutschland
Referenzen von TypeDef-Clustern an SubVIs übergeben
Vielen Dank für deine Antwort lieber Achim.
So wie du es gezeigt hast hab ich es auch schon realisiert, aber wie verändere ich denn jetzt ein bestimmtes (Anzeige-)Element des UserLights Clusters? Es ist ja ziemlich unbequem und fehleranfällig mir AllObjects auszulesen, dann auf Index x des AllObjects Arrays zuzugreifen (z.B. LEDx) und dann einen TypeCast "To more Specific Class" (also z.B. nach Boolean) zu machen und darauf folgend im Eigenschaftsknoten den Value zu setzen.

Ich möchte also auf die UserLights Referenz irgendwie einen BundleByName anwenden (also die Referenz wie einen Cluster behandeln) und mir dann direkt die Eigenschaft Object-->LEDx-->Value rauspicken, wie mach ich denn das?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.08.2007, 20:43 (Dieser Beitrag wurde zuletzt bearbeitet: 18.12.2007 18:18 von jg.)
Beitrag #4

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


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
Referenzen von TypeDef-Clustern an SubVIs übergeben
Also wenn du das jetzt nicht meinst, kann ich dir auch nicht helfen....

Lv82_img

Sonstige .vi  Cluster_2.vi (Größe: 10,22 KB / Downloads: 343)

Sonstige .vi  Subcluster_2.vi (Größe: 12,93 KB / Downloads: 374)

Sonstige .ctl  strictcluster.ctl (Größe: 7,39 KB / Downloads: 326)

"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
21.08.2007, 12:16
Beitrag #5

Faxe Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: Aug 2007

8
-
kA


Deutschland
Referenzen von TypeDef-Clustern an SubVIs übergeben
Jaha super Achim das wars!!!
Aber woran liegt es eigentlich, dass man nicht direkt einen TypeDef Refnum sondern immer nur Generic Cluster an SubVIs übergeben kann?
In jedem Fall vielen Dank nun kann es endlich (in großen Schritten) weitergehen in meinem LabVIEW Projekt!!!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
21.08.2007, 15:34
Beitrag #6

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


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
Referenzen von TypeDef-Clustern an SubVIs übergeben
' schrieb:Jaha super Achim das wars!!!
Aber woran liegt es eigentlich, dass man nicht direkt einen TypeDef Refnum sondern immer nur Generic Cluster an SubVIs übergeben kann?
In jedem Fall vielen Dank nun kann es endlich (in großen Schritten) weitergehen in meinem LabVIEW Projekt!!!

Du kannst natürlich ein (Strict)TypeDef übergeben...nur wird halt leider nur das (Strict)TypeDef automatisch aktualisiert, und nicht dessen entsprechende Referenz...weiß nicht, woran das liegt...hat sicher nen triftigen Grund...kannste ja mal bei NI fragen!

"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
18.12.2007, 17:43
Beitrag #7

23uwe Offline
LVF-Grünschnabel
*


Beiträge: 20
Registriert seit: Jan 2005

8.6.1
2001
en

85123
Deutschland
Referenzen von TypeDef-Clustern an SubVIs übergeben
' schrieb:Du kannst natürlich ein (Strict)TypeDef übergeben...nur wird halt leider nur das (Strict)TypeDef automatisch aktualisiert, und nicht dessen entsprechende Referenz...weiß nicht, woran das liegt...hat sicher nen triftigen Grund...kannste ja mal bei NI fragen!


Hallo Zusammen,

ein Frage hätte ich zu diesem Problem:
Warum erzeugt Ihr auf der Oberläche nicht ein Control-Refnum, zieht in dieses Control den Strict-Type-Def gebundenen Cluster-Control? Dieses Referenzcontrol wird bei jeder Änderung der Type-Def mit aktualisiert und man kann sich im SubVI das Cluster-Control sparen.

Gruß
23uwe

ANHANG: LV8.5


Angehängte Datei(en)
Sonstige .vi  Subcluster.vi (Größe: 18,49 KB / Downloads: 267)

Sonstige .vi  Cluster_2.vi (Größe: 11,28 KB / Downloads: 264)

Sonstige .ctl  strictcluster.ctl (Größe: 8,05 KB / Downloads: 244)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.12.2007, 18:21 (Dieser Beitrag wurde zuletzt bearbeitet: 18.12.2007 18:36 von Achim.)
Beitrag #8

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


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
Referenzen von TypeDef-Clustern an SubVIs übergeben
Zitat:Hallo Zusammen,
ein Frage hätte ich zu diesem Problem:
Nein, du hast ein Lösung!Wink

Zitat:Warum erzeugt Ihr auf der Oberläche nicht ein Control-Refnum, zieht in dieses Control den Strict-Type-Def gebundenen Cluster-Control?
L A T Ü R N I C H !

Ist natürlich viel einfacher...hatte ich überhaupt nicht dran gedacht! Mir ist aber auch irgendwie so, als ob's dabei noch irgend nen Haken gab...evtl. wars auch kein Haken, sondern der rote Stern, der das "Include data type" kennzeichnet...hm...weiß auch nicht mehr...siehe meinen Beitrag oben!
' schrieb:Du kannst natürlich ein (Strict)TypeDef übergeben...nur wird halt leider nur das (Strict)TypeDef automatisch aktualisiert, und nicht dessen entsprechende Referenz...weiß nicht, woran das liegt...hat sicher nen triftigen Grund...kannste ja mal bei NI fragen!


Jedenfalls kannte ich bis jetzt den Trick mit dem reinziehen des Controls in die Refnum noch nicht...super! Wieder was gelernt!Guru2


EDIT:
Zu meiner "Ehrenrettung" sei noch gesagt:
Wenn ich mir die Referenz auf das Cluster dynamisch holen will, z.B. wenn das Cluster auf nem TabControl liegt und ich mit dem "Pages"-Referenzen- und dem "Controls on Page"-Referenzen-Array arbeite, muss ich mir im SubVI doch mit "to more specific class" den Typ der zu ändernden Daten holen...und dafür muss man dann doch das Strict-Originalcontrol im SubVI platzieren

"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
24.12.2007, 01:20 (Dieser Beitrag wurde zuletzt bearbeitet: 26.12.2007 10:05 von jg.)
Beitrag #9

23uwe Offline
LVF-Grünschnabel
*


Beiträge: 20
Registriert seit: Jan 2005

8.6.1
2001
en

85123
Deutschland
Referenzen von TypeDef-Clustern an SubVIs übergeben
' schrieb:Nein, du hast ein Lösung!Wink
L A T Ü R N I C H !

Ist natürlich viel einfacher...hatte ich überhaupt nicht dran gedacht! Mir ist aber auch irgendwie so, als ob's dabei noch irgend nen Haken gab...evtl. wars auch kein Haken, sondern der rote Stern, der das "Include data type" kennzeichnet...hm...weiß auch nicht mehr...siehe meinen Beitrag oben!
Jedenfalls kannte ich bis jetzt den Trick mit dem reinziehen des Controls in die Refnum noch nicht...super! Wieder was gelernt!Guru2
EDIT:
Zu meiner "Ehrenrettung" sei noch gesagt:
Wenn ich mir die Referenz auf das Cluster dynamisch holen will, z.B. wenn das Cluster auf nem TabControl liegt und ich mit dem "Pages"-Referenzen- und dem "Controls on Page"-Referenzen-Array arbeite, muss ich mir im SubVI doch mit "to more specific class" den Typ der zu ändernden Daten holen...und dafür muss man dann doch das Strict-Originalcontrol im SubVI platzieren
=> o.k., wieder interessehalber => warum über "Controls on Page"? Da muss man ja wissen welches Element ich haben will. Dann übergebe ich einfach neben der Referenz auf das TabControl auch noch aus dem MainVI die Referenz des Clusters, gehe dann aber über "to more specific class" und der übergebenen ClusterReferenz auf das entsprechende Control. Kann mir also auch an dieser Stelle das OriginalControl sparen. Oder habe ich da was falsch verstanden?

Gruß
Uwe

Lv85_img


Angehängte Datei(en)
Sonstige .vi  Cluster_3.vi (Größe: 13,4 KB / Downloads: 261)

Sonstige .vi  Subcluster_3.vi (Größe: 23,58 KB / Downloads: 270)

Sonstige .ctl  strictcluster.ctl (Größe: 8,05 KB / Downloads: 216)
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
  Array aus Clustern simcum 6 5.437 26.10.2023 08:39
Letzter Beitrag: GerdW
  Extrem langsamer Variablen Zugriff über Referenzen hajos118 12 5.603 01.08.2022 17:20
Letzter Beitrag: BNT
  Muss man Referenzen von controls überhaupt schließen? dimitri84 4 4.235 21.04.2022 11:57
Letzter Beitrag: dimitri84
  Array aus clustern simcum 4 4.341 30.03.2020 07:11
Letzter Beitrag: simcum
  Referenzen in mehreren Bibliotheken aktualisieren seuk 3 4.007 12.09.2019 09:10
Letzter Beitrag: IchSelbst
  Cluster mit Referenzen auf FP-Elemente Oli_N 8 9.070 15.02.2017 11:19
Letzter Beitrag: Oli_N

Gehe zu: