Code to check for open uifigures

So I have some code that creates a uifigure. When I rerun the script I want it to clear the uifigure. Obviously the code needs to distinguish if I left the ui figure open so it can clear it, or does it need to create a new one. I can't seem to find a function that will work to check for the uifigure, does anyone know the answer?

Answers (1)

This will find all the uifigures you have open and store them in the variable f. Then you can delete them or whatever you want.
f = findall(groot(),'Type','figure');
is_uifig = false(numel(f),1);
for ii = 1:numel(f)
is_uifig(ii) = matlab.ui.internal.isUIFigure(f(ii));
end
f = f(is_uifig);

Asked:

on 8 Nov 2023

Answered:

on 8 Nov 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!