Verfasst am: 13.12.2011, 15:57
Titel: GUI Toolbar Toggle-Button Menu
Servus,
ich habe mehrere Optionen die ich sowohl über meine Menuleiste aktivieren will als auch über einen Togglebutton in der Toolbar (Selbst in GUIDE erstellt) anschalten beziehungsweise deaktivieren will.
Zum Beispiel Auswahl "Modell1" (on/off)
Einzeln funktionieren es einwandfrei allerdings kann ich über den Menu_Modell1_Callback den uitoggletool-Button nicht steuern. Also ich meine dass der Toogle Button dann visuel gedrückt erscheint oder eben nicht.
Ich hab auch schon mit nem handle.Mod1=get(gcbo) ... guidata(hObject, handles) versucht dass in die Callback Funktion zu transferieren und über 'State! on und off zu schalten aber das funktioniert nicht. (Umgekehrt kann ich den Menueintrag über ein gespeichertes handle ansprechen)
Jemand eine Idee wie man einen Toggletoolbutten aus einer anderen Funktion heraus drücken kann? (visuell reicht aus)
kleiner Tipp zum Optimieren des Codes:
Verwende SWITCH statt IF, wenn dir die Zustände von vornherein bekannt sind:
Code:
function Menu_Models_M1_Callback(hObject, eventdata, handles) switchget(gcbo, 'Checked') case 'on'
set(gcbo, 'Checked', 'off');
set(findobj('Tag','uitoggletool_M1'),'State','off');
case 'off'
set(gcbo, 'Checked', 'on');
set(findobj('Tag','uitoggletool_M1'),'State','on');
% otherwise % hier könnte eine Fehler-/Warnmeldung rein, falls mal was schief geht... end % -------------------------------------------------------------------- function uitoggletool_M1_OnCallback(hObject, eventdata, handles) set(handles.Menu_Models_M1,'Checked', 'on');
% -------------------------------------------------------------------- function uitoggletool_M1_OffCallback(hObject, eventdata, handles)
Normal nutz ich switch, die gcbo Abfrage war halt copy paste ...
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.