ich hab in meiner GUI ein SelectionChangeFcn wo drin radiobutton zum wählen sind. nun will ich die Slidern in der GUI jenach auswahl des Radiobuttons darstellen.
Soll heißen, wenn ich z.B button 1 wähledann sollen nur slider x und y benutzbar werden und beim Auswahl von radiobutton 2 die Slider x und z.
danke,.
ABer wenn ich jezt eine Slider auf off setze, so bleib sie auch off auch wenn ich ein anderen radio button auswähle.
ich dachte ich setzt da erst mal alle Slider auf on, aber wie kann ich denn mit handle.alleslider definieren???
Oder wie auch immer die Slider heißen.
Du könntest auch einfach per "[handles.Slider1, handles.Slider2, handles. Slider3]" zunächst alle Slider auf 'off' setzen und danach nur die entsprechenden wieder auf 'on'. Oder umgekehrt. Ganz wie es Dir gefällt.
MATLAB kann viel, aber es kann keine Gedanken lesen. Daher muss etwas, das 'off' gestellt wurde, auch wieder 'on' gestellt werden, wenn man das denn möchte.
Einen einfacheren Weg sehe ich nicht, außer wie von Jan schon angedeutet die Handles zusammenzufassen.
Wenn der Code läuft, wird ihn keiner mehr anschauen. Wenn er klar formuliert und gut dokumentiert ist, lässt er sich leicht debuggen und erweitern. Wenn überflüssiges weggelassen wird, läuft der Code auch schnell.
Wozu möchtest Du dann "eleganten" Code schreiben?
Du könntest in der OpeningFcn oder CreateFcn die Handles zusammenfassen:
Dies kann man übrigens auch für mehrere Properties gleichzeitig verwenden:
[code]set([H1, H2], {'Property1', 'Property2'},
{'Value1_H1', 'Value2_H1'; 'Value1_H2', 'Value2_H2'});
Ich finde dies aber weniger übersichtlich. Die Geschwindigkeit ist etwa gleich, aber das Zeichnen der Objekte benötigt so viel mehr Zeit, dass dies hier sowieso nicht wichtig ist, zumal der lesende Mensch bei GUIs ja der limitierende Faktor ist.
Ich vermeide in meinem Code SET mit Cell Argumenten nach Möglichkeit, da ich den expliziteren Code übersichtlicher finde. Wenn ich aber den 'Value' von 400 Togglebuttons erhalten oder setzen möchte, ist SET mit CELL-Argument praktisch (Minesweeper, Icon-Editor, etc).
Gruß, Jan
Einstellungen und Berechtigungen
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.