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

回答(1 个)
Walter Roberson
2022-3-10
1 个投票
Why create a uifigure() there? uialert() will create its own uifigure()
6 个评论
Ali razi
2022-3-10
Walter Roberson
2022-3-10
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
2022-3-11
Walter Roberson
2022-3-11
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.
Simon Chan
2022-3-12
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
2022-3-12
@Simon Chan That's a good idea.
类别
在 帮助中心 和 File Exchange 中查找有关 Develop Apps Programmatically 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!