does anyone knows about to clear the figure window??
4 views (last 30 days)
Show older comments
ARYA NAYAK
on 24 Dec 2016
Commented: Image Analyst
on 4 Feb 2017
i used clf function to clear the figure. it will clears all the option in the figure. i need menu options. clf functions clears menu options too.
what to do now??? help me please.....
0 Comments
Accepted Answer
Walter Roberson
on 24 Dec 2016
delete(findobj('Type', 'axes'))
6 Comments
Image Analyst
on 25 Dec 2016
You already have lines of code to create menus, so what's the problem in using it again?
I don't know what you mean by previously coded programs. If you have a GUI made with GUIDE you wouldn't want to do that, but if you built all your controls manually with uicontrol, uimenu, uitable, etc. then it's easy to just blow away the figure, recreate it, and add the menu again. I don't know why you say it won't work. See my other answer with the demo.
More Answers (2)
Image Analyst
on 25 Dec 2016
What if you just delete it and recreate it:
hFig = figure();
% Now put stuff on it with uicontrol()
% Your code goes here.....
% Now clear them away by deleting and recreating a blank figure.
delete(hFig);
hFig = figure();
0 Comments
Image Analyst
on 25 Dec 2016
Try this demo:
% Create a new figure.
hFig = figure('MenuBar','None');
% Create menu
mh = uimenu(hFig,'Label','Find');
frh = uimenu(mh,'Label','Find and Replace ...',...
'Callback','disp(''goto'')');
frh = uimenu(mh,'Label','Variable');
uimenu(frh,'Label','Name...', ...
'Callback','disp(''variable'')');
uimenu(frh,'Label','Value...', ...
'Callback','disp(''value'')');
% Now put other stuff on it with uicontrol()
% Your code goes here.....
plot(1:10);
uiwait(msgbox('Click OK to clear figure'));
% Now clear them away by deleting and recreating a blank figure.
delete(hFig);
hFig = figure();
% Create menu
mh = uimenu(hFig,'Label','Find');
frh = uimenu(mh,'Label','Find and Replace ...',...
'Callback','disp(''goto'')');
frh = uimenu(mh,'Label','Variable');
uimenu(frh,'Label','Name...', ...
'Callback','disp(''variable'')');
uimenu(frh,'Label','Value...', ...
'Callback','disp(''value'')');
3 Comments
Walter Roberson
on 4 Feb 2017
Remove the "Function menu_callback" line that you have. Replace it with
function MENU
now you can call it as
MENU
Image Analyst
on 4 Feb 2017
ARYA, it looks like you're using GUIDE, so why don't you just use the menu editor icon in GUIDE to create a menu and put code into its callback?
See Also
Categories
Find more on Migrate GUIDE Apps in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!