create a tab which appear before closing the GUI

6 ビュー (過去 30 日間)
PA
PA 2022 年 10 月 10 日
回答済み: Allen 2022 年 10 月 10 日
How to create a tab which appear when i close the GUI to ask whether i want to export if i have not done and if its done its just close?

回答 (2 件)

Jiri Hajek
Jiri Hajek 2022 年 10 月 10 日
You have to create a UIFigureCloseRequest callback, which is easily done in AppDesigner by a right click on the app.UIFigure in Component Browser.
Then, in the callback, use a.uiconfirm functiion, which gives two alternative answers (OK or Cancel). In an if-else block, you can manage the options you need do perform. You can close the app by the command delete(app).
  5 件のコメント
PA
PA 2022 年 10 月 10 日
selection = uiconfirm(app.UIFigure, 'Do you really want to close the Project without Saving?',...
' Close Request','Options',{'Save','Donot Save','Cancel'});
switch selection
case'Save'
if x ==1
x= save is done;
elseif x==0
x = save is not done
delete (app)
case'Cancel'
return
end
end

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


Allen
Allen 2022 年 10 月 10 日
@PA, I typically use something similar to the following.
qstr = "Do you really want to close the Project without Saving?";
qans = uiconfirm(app.UIFigure,qstr,"Close Request", ...
"Options",["Save","Don't Save","Cancel"], ...
"DefaultOption",1,"CancelOption",3);
if strcmp(qans,"Canel")
return
elseif strcmp(qans,"Save")
% I typically have a save function assign to a push button callback
% within my App and call it directly from here.
SaveButtonPushed(app,event)
% You can also directly insert any save functions that work for your
% data type.
% save(...)
end
delete(app)

カテゴリ

Find more on Migrate GUIDE Apps in Help Center and File Exchange

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by