Close uialert - App designer

In App designer I have a function called
DayButtonPushed(app, event)
With the following code:
aFig = uifigure;
message = sprintf('March \n\nYear 2022');
uialert(aFig,message,'Info','Icon','info');
When I press the OK it does not close the background window. Therefore, how can I close all upon pressing ok (image attached)?

Answers (1)

Walter Roberson
Walter Roberson on 10 Mar 2022
Why create a uifigure() there? uialert() will create its own uifigure()

6 Comments

This is what I see in the examples at https://www.mathworks.com/help/matlab/ref/uialert.html
Is their another way to solve it?
Ah, I see.
It is a modal alert, so it will not return until the user has clicked. So after the uialert() call you can destroy the figure.
if I add close(aFig); it automaticly close. Any idea how to solve it?
I see what you mean.
I had a look in the source code, but the graphics works a completely different way for uifigure() and in the time I was willing to spend, I did not find a method.
Add a CloseFcn may be a workaround if you don't want to use the uifigure anymore.
aFig = uifigure;
message = sprintf('March \n\nYear 2022');
uialert(aFig,message,'Info','Icon','info','CloseFcn',{@closefig,aFig});
function closefig(src,event,aFig)
delete(aFig)
end
@Simon Chan That's a good idea.

Sign in to comment.

Categories

Find more on Develop Apps Programmatically in Help Center and File Exchange

Products

Release

R2021b

Asked:

on 10 Mar 2022

Commented:

on 12 Mar 2022

Community Treasure Hunt

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

Start Hunting!