How to close a figure and make the rest of the code run?
9 views (last 30 days)
Show older comments
Jose Andrés
on 28 Nov 2015
Commented: Image Analyst
on 29 Nov 2015
Hello everyone, I think I have an easy question but I don't know exactly how to execute it.
My code starts executing a GUI which opens a Figure where I have to visualize certain images. I want that when I finish my visualization and close this Figure (GUI), the rest of my code continues.
I think it should be something like:
GUI
while Figure isopen
%something
end
RestOfMyCode
or am I wrong?
Thank you so much for your help!
0 Comments
Accepted Answer
Walter Roberson
on 28 Nov 2015
uiwait(Figure_Handle)
See also isgraphics and ishandle() in http://www.mathworks.com/help/matlab/graphics-object-identification.html
0 Comments
More Answers (1)
Image Analyst
on 28 Nov 2015
Get the handle when you create the figure, then use a prompt to let the user know that s/he's ready to continue:
hFig = figure();
% Code to throw stuff up on the figure...
% Wait for user to say they're ready to continue:
promptMessage = sprintf('Do you want to Continue processing,\nor Quit processing?');
titleBarCaption = 'Continue?';
buttonText = questdlg(promptMessage, titleBarCaption, 'Continue', 'Quit', 'Continue');
if strcmpi(buttonText, 'Quit')
return; % Bail out of program - call close(hFig) if you also want to close the figure, otherwise it leaves it up.
end
% Now continuing on with the program...
% Let's close the figure.
close(hFig);
2 Comments
Image Analyst
on 29 Nov 2015
You (or anyone) can always "Vote" for answers to give additional reputation points. You can even vote for ones you chose as the answer. Anyway, glad I could help.
See Also
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!