How to close mutiple uifigure using command
114 views (last 30 days)
Show older comments
I run fig = uifigure many time in Matlab,so I genetared lots of uifigure ,I want to close all uifigure with one line of command.Do you know what command I should enter in Matlab.Thank you very much
0 Comments
Accepted Answer
Ameer Hamza
on 14 Oct 2020
Run this
all_fig = findall(0, 'type', 'figure');
close(all_fig)
6 Comments
Yang Liu
on 10 Nov 2023
Thank you, but don't take my wife. Your codes works for me, just a quick question:
What does the 0 represent? I try to figure out with help findall, and find nothing helpful...
Thanks, and take my wife now.
Voss
on 4 Apr 2024
0 is the graphics root object, which is also returned by the groot function, so you could do findall(groot,_)
More Answers (2)
Bjorn Gustavsson
on 14 Oct 2020
If you want to keep some figures you can close a subset of them if you keep the figure-handles in an array. If you modify your creation to something like this for all call to uifigure:
if ~exist('uifig')
uifig = uifigure;
else
uifig(end+1) = uifigure;
end
if ~exist('uifig')
uifig = uifigure;
else
uifig(end+1) = uifigure;
end
% ...etc
% then you can close some suitable set of them, or all of them
% closing all:
close([uifig]),clear uifig
% closing some:
close([uifig([1 3])]),uifig([1 3]) = [];
HTH
0 Comments
See Also
Categories
Find more on Environment and Settings in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!