Closing all figures except 2

30 views (last 30 days)
Jason
Jason on 21 Mar 2018
Commented: Jason on 21 Mar 2018
I have a function that closes all figures except my main figure (GUI1)
% Close figures
fig1h = findall(0,'type','figure','Tag','GUI1'); %Keep this open as its the main GUI figure
figh = findall(0,'type','figure');
other_figures = setdiff(figh, fig1h)
delete(other_figures)
I wanted to modify this to also keep open a 2nd GUI whos tag is "LTF" but its not keeping open this 2nd GUI figure.
% Close figures
fig1h = findall(0,'type','figure','Tag','GUI1'); %Keep this open as its the main GUI figure
figh = findall(0,'type','figure');
figl=findall(0,'type','figure','Tag','LTF');
other_figures = setdiff(figh, fig1h)
other_figures = setdiff(other_figures, figl)
delete(other_figures)
  2 Comments
dpb
dpb on 21 Mar 2018
We can't duplicate your GUI; set a breakpoint in the routine and step through to see what is going on internally. Superficially, other than some inefficiencies in duplicated code where could use compound search don't see anything obvious.
Jason
Jason on 21 Mar 2018
ha ha ... it does work, I had changed the "name" of the figure and not the "Tag".

Sign in to comment.

Answers (0)

Categories

Find more on Graphics Object Programming 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!