2017-04-23 8 views
0

Ich habe versucht, auf Cluster-Variablen zuzugreifen. Kürzlich habe ich gelernt, dass Sie .NET Framework-Shared-Variablen nicht verwenden können, und ich habe festgestellt, dass dies normalerweise über AcitveX geschieht.Wie können Wertsignal-Ereignisse in LabVIEW mit ActiveX ausgelöst werden?

Mit ActiveX kann ich jedes gewünschte VI ausführen und die Werte ändern, aber die meisten VIs, auf die ich zugreifen möchte, haben UI-Loops und Consumer Loops. Den Wert eines Steuerelements manuell zu ändern, löst ein Ereignis aus, das erkannt wird, und führt zu bestimmten Aktionen, an denen ich interessiert bin. Nach dem Lesen einiger alter KBs habe ich herausgefunden, dass das mit ActiveX nicht möglich ist.

Ist es in LabView 2015 das gleiche? In einigen Foren wurde über das Erstellen eines VIs innerhalb des ActiveX-Programms diskutiert, das die Benutzerereignisse als eine Art Ebene auslöst. Kann jemand Beispiele für solche VIs teilen? Gibt es noch andere Arbeiten?

+0

Könnten Sie bitte genauer beschreiben, was Sie erreichen wollen? Danke – MarcoM

+0

Ich versuche auf Cluster-Variablen zuzugreifen. Die aktuellen VIs aktualisieren nur Variablen, wenn Wertsignale von Benutzerereignissen erfasst werden. ActiveX kann keine Wertesignale ausgeben. Ich habe VIs zum Lesen und Schreiben der Cluster-Variablen erstellt. – gyani

+0

Wo versuchen Sie, auf diese Cluster von - innerhalb derselben LabVIEW-Anwendung, einer anderen LabVIEW-Anwendung oder von externem nicht LabVIEW-Code zuzugreifen? Ich gehe davon aus, dass es das letzte ist, da es sonst keinen Sinn macht, ActiveX oder .NET einzubeziehen, aber eine klarere Beschreibung würde helfen. – nekomatic

Antwort

1

Sie können programmatische Feuer ein Signalereignis durch den Eigenschaftsknoten mit -> Wert (Signaling)

Rechtsklick auf die Steuerung im Blockdiagramm, kann dies unter: Erstellen -> Eigenschaftsknoten -> Wert (Signalisierung).

Jeder Wert, der an diesen Knoten geschrieben wird, generiert ein Signalereignis für dieses spezifische Steuerelement. Sie benötigen ActiveX nicht speziell, um diese Ereignisse zu generieren.

+0

Ich denke, der Fragesteller möchte das LabVIEW-Steuerelement von nicht-LabVIEW-Code ändern, aber es ist nicht klar. – nekomatic

0
  • Sie Veranstaltungen mit Eigenschaftsknoten abfeuern kann
  • Sie Änderungsereignisse mit Eventbauten

Dies kann getan werden, sogar für einzelne Kontrollen (wie bereits von @DJ Klomp erklärt) können innerhalb erfassen und verarbeiten ein Cluster.

enter image description here

Verwandte Themen