LabVIEWForum.de - mehrere Buttons gleichzeitig deaktivieren

LabVIEWForum.de

Normale Version: mehrere Buttons gleichzeitig deaktivieren
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Also ich habe ein Panel mit 20 Knöpfen, nun möchte ich, sobald ein Knopf gedrückt wird, dass die anderen gesperrt werden,solange bis der knopf zurück gesetzt wird.
Bei 3 knöpfen kann man das noch halbwegs übersichtlich mit eigenschaftsknoten machen, aber bei 20 wird dies doch sehr komplex.
zudem müsste es doch eine einfachere art geben so etwas zu steuern oder?

Anbei ist ein beispiel, wo knöpfe zusammengelegt sind, der rest ist noch nicht angeschlossen.

[attachment=14710]
Ohne Ansicht deines VI's:

Da du eine bestimmte Untermenge deiner Controls auf dem FP deaktivieren willst, wird dir nicht viel anderes übrig bleiben, als durch eben all diese Controls per PropertyNode zu gehen. Und wenn du das nur an einer Stelle im Programm machst, dann lohnen sich kaum andere Lösungen, die da wäre:

Du erstellst die ein Funktionales-Globales-SubVI. Das hat 2 Zustände: Einmal ein Array an Control-Refnums zu speichern und dann genau diese Menge an Control-Refnums zu aktivieren bzw. deaktivieren. Das kann man dann bequem in einer FOR-Schleife machen.

Zu Beginn initialisiert du also dieses VI mit den Refnums deiner Untermenge an Controls, und an der entsprechenden Stelle kannst du dann dieses VI nehmen und einfach all diese Controls aktivieren/deaktivieren.

Es gäbe auch noch andere Möglichkeiten: Bsp: Wenn du eine bestimmte Klasse von FP-Elementen (also z.B. Buttons), aber die komplett, aktivieren/deaktivieren willst, dann holst du dir per PropertyNode alle Control-Refnums, überprüfst, ob es eine Button-Refnum ist, und (de-)aktivierst dann diese Elemente.

Gruß, Jens
Hallo

setz die zu deaktivierenden Buttons doch einfach auf ein TAB control das kannman auch durchsichtig machen... und kannst dann die seite 1 oder wars 0 ?... deaktivieren damit sind auch alle elemente die auf/in dem Tab control sind deaktiviert ...

Toaran
' schrieb:zudem müsste es doch eine einfachere art geben so etwas zu steuern oder?
Mach z.B. ein Array aus Referenzen auf die Elemente. Das Array kannst du dann in einer FOR-Schleife durchgehen: Array indizieren -> Refernez auf PropertyNode -> Disablen.

Ich jedoch verwende auch die TabSheet-Methode: Alle Buttons auf TabSheet und das TabSheet unsichtbar schalten.
Es ist kompliziert, weil Dein Wunsch so ausgefallen ist.
"Normal" wäre: : Es kann immer nur höchstens einer von 20 Knöpfen gedrückt werden. Du kannst jeden Knopf drücken, aber der bisher gedrückte Knopf springt dann automatisch heraus.
Wenn Du das willst, dann gibt es dafür eine superelegante Lösung: Radiobuttons.
Ich vermute, Du willst genau das, hast Dirs aber hier nicht getraut zu sagen.
Also sage es, und Dir wird jede erdenkliche Hilfe zuteil...
Edit:
Bedienphilosophisch gesehen ist die Sachlage doch die:
Es ist ein Knopf gedrückt. Dann gibt es zwei Möglichkeiten.
1.) Der Knopf soll wieder heraus. OK
2.) Der Knopf soll heraus, weil ein neuer gedrückt werden soll. Warum hier umständlich daraus 2 Bedienvorgänge machen? In diesem Fall kann doch das Herausnehmen das alten Knopfes automatisch beim Drücken des neuem Knopfes erledigt werden können.
Wow, ja also das mit den Radio buttons trifft es wirklich schon sehr gut!
aberWink: wie kann ich denn auch mehrere buttons eingeben, die dann dasselbe tun? also es soll z.b. 4 mal einen knopf drücken, der das gleiche tut. Soll für die abfolge einfacher zu verstehen sein, mein betreuer möchte das so.
Bahn
Zitat:wie kann ich denn auch mehrere buttons eingeben, die dann dasselbe tun?
Hä? Es gind doch darum, daß alle Köpfe gesperrt sein sollten, bis auf den einen, er gedrückt ist. Wie verträgt sich das Drücken mehrere Knöpfe mit Deiner eigenen Vorgabe?
Zitat:also es soll z.b. 4 mal einen knopf drücken, der das gleiche tut.
In diesem zweiten Halbsatz scheint es auf einmal nur noch um einen Knopf zu gehen, auf dem mehrere Male herumgetackert wird. Ist aber auch nur ein vage Vermutung.

Ist der Sachverhalt wirklich so komplex, daß er sich nicht in klare Worte fassen lässt?
Referenz-URLs