How to add uibuttongroup to a toolbar
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I want to add 3 toggle buttons to the toolbar. They are exclusive, i.e., only one of them should be pressed.
It is easy to create these buttons on a figure by using uibuttongroup, which takes care of the desired behavior. Is it possible to add them to the toolbar?
0 Kommentare
Akzeptierte Antwort
Chidvi Modala
am 10 Okt. 2019
Hello Xi,
From my understanding, you want to add 3 toggle buttons to the toolbar and you want only one toggle button being active at the same time.
You can make use of 'uitoggletool' to create a toggle button on toolbar and create appropriate callbacks for toggle action to set the state of other toggle buttons
For example
function createToggleButtons
f = figure('ToolBar','none');
tb = uitoolbar(f);
img = zeros(16,16,3);
% Create 2 toolbar items (set one among them to have ‘on’ State)
tb1 =uitoggletool(tb,'CData',img,'TooltipString','ToggleButton1','State','on');
tb2=uitoggletool(tb,'CData',img,'TooltipString','ToggleButton2');
% Set the callback for each toggle passing itself and the other toggle
% to the callback
set(tb1,'ClickedCallback',@(obj,event)ToggleToolbar(obj,tb2));
set(tb2,'ClickedCallback',@(obj,event)ToggleToolbar(obj,tb1));
end
function ToggleToolbar ( primary, secondary )
% Switch the other toolbar state based on the value of the
% toolbar which the user clicked on.
switch get ( primary, 'State' )
case 'on'
set ( secondary, 'State', 'off' );
case 'off'
set ( secondary, 'State', 'on' );
end
end
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Migrate GUIDE Apps finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!