create a tab which appear before closing the GUI

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?

Réponses (2)

Jiri Hajek
Jiri Hajek le 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 commentaires

PA
PA le 10 Oct 2022
How can i create a UIfigureCLose request callback in GUI without Appdesigner through programm
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
PA le 10 Oct 2022
Thank you
PA
PA le 10 Oct 2022
how to create a check variable inside theclosed figure call back function :1 if its save, 0 if save not done
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

Connectez-vous pour commenter.

Allen
Allen le 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)

Catégories

En savoir plus sur Environment and Settings dans Centre d'aide et File Exchange

Tags

Question posée :

PA
le 10 Oct 2022

Réponse apportée :

le 10 Oct 2022

Community Treasure Hunt

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

Start Hunting!

Translated by