LabVIEWForum.de - Bedienelemente bei Bedarf aktivieren/deaktivieren

LabVIEWForum.de

Normale Version: Bedienelemente bei Bedarf aktivieren/deaktivieren
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo zusammen,

ich möchte schlicht und ergreifend Bedienelemente deaktivieren und ausgrauen, wenn sie nicht benötigt werden.

Hierzu ein Bsp.: ich stelle die Messwerte meiner Messkarten auf dem FP dar, d.h. Temperaturen, Spannungen und dig. Ports. Dabei gebe ich dem User die Möglichkeit zu wählen, was er sich anzeigen lassen möchte, d.h. er kann jeden Kanal ausknipsen, wenn er will. Bei den Spannungen gebe ich dem User weiterhin die Möglichkeit der Skalierung nach dem Schema mx+b. Wenn der User nun aber nur Temperaturen messen möchte, dann ist doch die ganze Skaliererei der Spannungen überflüssig - klar. Daher möchte ich die Bedienelemente für die Skalierung einfach deaktivieren und ausgrauen, oder aber komplett ausblenden, je nach dem, was machbar ist.

Da sich meine LV Kenntnisse auf meinen LVBasic I Kurs und etwas praktischer Erfahrung auf Arbeit beschränken, bitte ich euch um einen Lösungsansatz. Habe schon die LV Hilfe gewälzt, aber wahrscheinlich nicht die passenden Stichworte getroffen.

Vielen Dank schon mal vorab!
Hallo,

ich glaube, das Thema hatten wir auch schon einige Male.

Antwort: Zu jedem Frontpanel-Element gibt es die Property-Node "Disabled", die zur Laufzeit gesetzt werden kann:

[attachment=7077]

MfG, Jens
Hallo Jens,

vielen Dank für den Tipp. Nach etwas Suchen hab ich's gefunden und hinbekommen.

Für einen Anfänger in Sachen LV wie mich ist es nicht ganz einfach nach etwas zu suchen, was man nicht kennt und nicht weiß, wonach man suchen soll. Daher wahrscheinlich verlief die Suche nach einem ähnlichen Beitrag hier im Forum für mich erfolglos.
Für den Fall, dass ich hier eine bekannte Frage zum zigsten Mal gestellt habe, bitte ich um Nachsicht.

Für die schnelle Antwort gilt auf jeden Fall mein Dank.
Ich grabe hier mal was altes wieder aus - auch wenn wir es schon ein paar mal hatten - mich würde mal interessieren ob es diese Möglichkeit auch für ein Cluster gibt. Hintergedanke is folgender, ich lese daten ein und schreibe die in mein Control, gleichzeitig übergebe ich einen Wert für die Aktivierung / Deaktivierung der jeweiligen Gruppe von Controls. Bisher habe ich für jedes Control ein Property Node, was nich nur blöd ausschaut sondern auch sehr nervig ist! Kann ich ein Cluster, welches wirklich nur aus controls besteht (vielleicht wäre hier dann auch ein Array klüger) mit einem Property Node deaktivieren / aktivieren? Oder nimmt sich das vom Aufwand nichts weil zum schreiben und lesen dann das ganze erschwert wird?

Gruß
Daniel
(05.09.2011 07:51 )M@rRy schrieb: [ -> ]Kann ich ein Cluster, welches wirklich nur aus controls besteht (vielleicht wäre hier dann auch ein Array klüger) mit einem Property Node deaktivieren / aktivieren?

Ähm, ich verstehe deine Beitrag nicht ganz, aber grundsätzlich kannst du doch auch ganze Cluster Aktivieren/Deaktivieren:

[attachment=35652]

Dabei ist egal, ob sich in dem Cluster Controls, Indicators oder Decorations befinden Smile


Beste Grüße,
NWO
Oh ... da hatte ich das sprichwörtliche Brett vorm Kopf, aber ja genau das meinte ich, danke dir.

Gruß
Daniel
(12.06.2007 18:34 )Schrammi schrieb: [ -> ]ich möchte schlicht und ergreifend Bedienelemente deaktivieren und ausgrauen, wenn sie nicht benötigt werden.
Hier wurden ja schon Antworten gegeben, ich möchte nur noch etwas ergänzen. Das Aktivieren und Deaktivieren von Bedienelementen ist ja nicht ein ausgefallener Sonderwunsch, sondern es betrifft eigentlich jedes professionelle Programm, bei dem man möchte, das es sich intuitiv und möglichst fehlerfrei bedienen läßt.
Das Problem ist, dass das bei vielen Bedienelementen im Programm recht aufwendig werden kann.
Um den Aufwand gering zu halten und die Übersicht zu verbesseren, sollten auch diese Möglichkeiten erwogen werden:
  • Zusammenfassung mehrerer Elemente zu einem Cluster, (de)aktivieren des Clusters
  • Benutzung der Registerstruktur, wobei diese einschließlich der Reiter auch unsichtbar gemacht werden kann und die kontextbezogen richtige Seite vom Programm aufgerufen wird.
  • PopUp-Fenster für Eingaben verwenden
Habe ich noch etwas vergessen?
Das sind genau die drei Punkte die ich in meinem Programm erweitern / verbessern möchte, deshalb kam auch die Frage mit dem Cluster auf. Habe 9 Controls die ich immer wieder über einzelne Eigenschaftsknoten geändert habe. Das is mir aber ein wenig blöd gewesen deshalb die Frage mit dem Zusammenfassen.

Besten Dank nochmal!

Gruß
Daniel
Auch ich möchte noch einen Punkt ergänzen.
  • Wenn der Eigenschaftsknoten mehfach, also für viele Elemente verwendet wird, dann könnte man die Referenzen der (gleichartigen) Controls zusammenfassen in ein Array und dann per Loop setzen. Das macht das Diagramm etwas sauberer u.U..
Hallo,

das reine deaktivieren ist mir bekannt. Das Problem ist, wenn ich ein Array mit Scrollleiste deaktiviere, dass ich dann nicht mehr alle Werte angucken kann, da auch die Scrolleiste deaktiviert wird.
Gibt es eine Möglichkeit nur die einzelnen Elemente eines Arrays auszublenden und bei Bedarf zu aktivieren? Oder die Scrollleiste aktivieren würde auch schon reichen.
Der Eigenschaftsknoten "Deaktiviert" macht, wenn ich das richtig sehe, das gleiche wie "Array Element -> Deaktiviert"...?
Was auch gehen würde ist, wenn man auf Knopfdruck von Anzeigeelement auf Bedienelement wechselt Cool Aber dabin ich mir sicher, dass das nicht geht Post-880-1250020234
Hat jemand für diese Kleinigkeit eine Lösung?
Gruß Tobias
Seiten: 1 2
Referenz-URLs