Bedingter Textring/Enum - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +--- Thema: Bedingter Textring/Enum (/Thread-Bedingter-Textring-Enum) |
Bedingter Textring/Enum - Andre_A - 30.05.2013 22:51 Hallo Zusammen. Ich würde gerne ein Sub-VI erstellen, dass z.B. 2 Eingänge hat, diese könnten Ringe oder Enums sein. Ist es möglich das Sub-VI so zu gestalten, dass z.B. wenn der erste Eingang durch den Ring/Enum die Auswahlmöglichkeit "Name" vorgegeben wird, dass der zweite Eingang nur noch die Möglichkeiten "Schulze" "Meier" "Müller" anbietet; und wenn ich am ersten Eingang "Wohnort" einstelle, dass dann nur noch "Berlin" "Stuttgart" "München" beim zweiten zur Auswahl stehen ? Ich hoffe, die Fragestellung ist klar geworden. Polymorphes VI mit Typedefs am Eingang vielleicht ?! Wäre für ein anschauliches Beispiel oder eine Erklärung sehr dankbar. MfG Andre RE: Bedingter Textring/Enum - GerdW - 31.05.2013 07:46 Hallo Andre, Zitat:Polymorphes VI mit Typedefs am Eingang vielleicht ?!Polymorph ist schon die richtige Richtung... Zitat:wenn der erste Eingang durch den Ring/Enum die Auswahlmöglichkeit "Name" vorgegeben wird, dass der zweite Eingang nur noch die Möglichkeiten "Schulze" "Meier" "Müller" anbietet; und wenn ich am ersten Eingang "Wohnort" einstelle, dass dann nur noch "Berlin" "Stuttgart" "München" beim zweiten zur Auswahl stehen ?Du lässt den ersten Eingang einfach weg und verwendest stattdessen die Polymorph-Auswahl dafür! Je nach Auswahl wird dann ein anderes "subVI" des Polymorph-VIs angezeigt, dass dann die passenden Eingänge bietet. Dazu dann noch die automatische Auswahl abschalten. Als Beispiel kannst du dir die DAQmx-VIs anschauen, z.B. das DAQmxTiming! RE: Bedingter Textring/Enum - Lucki - 31.05.2013 09:14 Die zweite Möglichkeit wäre, für den zweiten Eingang das Containerformat "Variant" zu verwenden. Der Eingang nimmt dann zwar alles an, er verweigert aber auch nichts wegen eines falschen Formates, wie das sonst wohl der Fall wäre. Der erste Eingang geht im SubVI an einen Case-Selektor, und in jedem dieser Cases läßt sich dann aus dem Variant die ursprüngliche Variable rekonstruieren. (Für weitere Hilfestellung VI senden, in dem z.B. die Enums schon existeiren - erleichtert die Beantwortung) RE: Bedingter Textring/Enum - Andre_A - 31.05.2013 09:23 Hallo und danke für die Antwort. Das funktioniert schon, soweit ist das auch klar. Das "Problem" ist, dass, wenn ich eine Konstante oder Bedienelement an den Eingang lege und vorher z.B. "Name" gewählt habe, bietet der mir das auch an. Wenn ich aber nach dem Anlegen des Eingangs den Typ wechsle, bleiben die Auswahlmöglichkeiten erhalten. Ich muss den Eingang trennen und neu verbinden, damit der die Auswahl vom neuen Typ übernimmt. Die Frage war, ob es Möglich ist, das sich im aufrufenden VI die Anschlüsse ad hoc ändern, wenn ich den Typ (oder die Auswahl eines anderen Eingangs) verändere. Gruß, Andre ps: Daq-Treiber hab ich nicht... konnte deswegen nicht nachschauen. Vielleicht wäre das ja schon die Lösung gewesen. RE: Bedingter Textring/Enum - GerdW - 31.05.2013 10:35 Hallo Andre, Zitat:Wenn ich aber nach dem Anlegen des Eingangs den Typ wechsle, bleiben die Auswahlmöglichkeiten erhalten. Ich muss den Eingang trennen und neu verbinden, damit der die Auswahl vom neuen Typ übernimmt.Das wird auch immer so sein. Warum sollte LabVIEW die Namen&Datentypen von Eingabeelementen im MainVI ändern, nur weil du ein anderes subVI einbindest? P.S.: - Evtl. ließe sich das mit etwas LV-Scripting erledigen - aber lohnt sich der Aufwand hierfür wirklich? - Wie oft hast du vor, da ein subVI auszutauschen? Sowas macht man doch eh nur einmal bei Erstellen eines VIs!? RE: Bedingter Textring/Enum - Andre_A - 31.05.2013 11:09 Es ist auch eher ein kleineres (Luxus-)Problem, funktionieren wird das auch alles ohne diese Spielerei. Ich wollte generell nur wissen, ob das möglich wäre. Könnte man ja evtl mal gebrauchen. Trotzdem danke für die Hilfe. Gruß, Andre |