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)?

Antworten (1)

Walter Roberson
Walter Roberson am 10 Mär. 2022

1 Stimme

Why create a uifigure() there? uialert() will create its own uifigure()

6 Kommentare

Ali razi
Ali razi am 10 Mär. 2022
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?
Walter Roberson
Walter Roberson am 10 Mär. 2022
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.
Ali razi
Ali razi am 11 Mär. 2022
if I add close(aFig); it automaticly close. Any idea how to solve it?
Walter Roberson
Walter Roberson am 11 Mär. 2022
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
Walter Roberson
Walter Roberson am 12 Mär. 2022
@Simon Chan That's a good idea.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Develop Apps Programmatically finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2021b

Gefragt:

am 10 Mär. 2022

Kommentiert:

am 12 Mär. 2022

Community Treasure Hunt

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

Start Hunting!

Translated by