How to close an uialert programmatically

I'm developping some tests with the matlab.uitest framework. Everything is fine until my app generates an uialert, which is expected behavior.
The problem is, once uialert pop-up is there, I can't do any more gesture (choose, press, drag...). If I unlock the app and close the uialert manually (with matlab.uitest.unlock(fig)), then everything is fine again.
So, do you know any way to close an uialert programmatically ?

 Accepted Answer

Adam Danz
Adam Danz on 28 Jul 2020
Edited: Adam Danz on 28 Jul 2020
The uialert window cannot be programmatically closed, at least not in r2020a. You can, however, make the uialert non-modal which will allow you to interact with the base figure (app) while the uialert still exists.
uialert(uifig, 'message', 'title', 'Modal', false)
Alternatively, you could use a msgbox which outputs a handle that you can use to delete at any time but this will not be automatically centered on the app like the uialert panel does.

2 Comments

Oh yes, thank you, didnt think of Modal property !
hi
use this code instead:
d=uiprogressdlg(app.UIFigure,'Message',message,'Title',title,...
'Icon','error','Cancelable','on','Indeterminate','on');
for i=5:-1:1
d.Message=[num2str(i) ' seconds to close ' ];
pause(1)
end
close(d)

Sign in to comment.

More Answers (0)

Categories

Find more on MATLAB Parallel Server in Help Center and File Exchange

Asked:

on 23 Jul 2020

Edited:

on 12 Dec 2021

Community Treasure Hunt

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

Start Hunting!