How to close mutiple uifigure using command
264 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 at 4:47
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 Develop uifigure-Based Apps 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!