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 ?

 採用された回答

Adam Danz
Adam Danz 2020 年 7 月 28 日
編集済み: Adam Danz 2020 年 7 月 28 日

0 投票

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 件のコメント

Arthur Roué
Arthur Roué 2020 年 7 月 28 日
Oh yes, thank you, didnt think of Modal property !
Ali Nateghi
Ali Nateghi 2021 年 12 月 12 日
編集済み: Ali Nateghi 2021 年 12 月 12 日
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)

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeTables についてさらに検索

質問済み:

2020 年 7 月 23 日

編集済み:

2021 年 12 月 12 日

Community Treasure Hunt

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

Start Hunting!

Translated by