create a tab which appear before closing the GUI
Show older comments
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?
Answers (2)
Jiri Hajek
on 10 Oct 2022
0 votes
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 Comments
PA
on 10 Oct 2022
Jiri Hajek
on 10 Oct 2022
This is not a way I'd recommend and if you have access to a recent release of MATLAB, AppDesigner is definitely the way to go...
It is possible to do programmatically, but you have to study the documentation in more depth. You may find the details here: https://www.mathworks.com/help/matlab/creating_guis/write-callbacks-for-apps-created-programmatically.html...
PA
on 10 Oct 2022
PA
on 10 Oct 2022
PA
on 10 Oct 2022
Allen
on 10 Oct 2022
@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)
Categories
Find more on Environment and Settings 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!