What is wrong with my exit button?

1 view (last 30 days)
I have this code on an exit button and when I hit the button and select 'yes' to save the data I receive the figure again. Why? What am i doing wrong? And why when I select 'no', I receive the questiondlg again?
answer=questdlg('Save changes to the model?',...
'Exit ADADCS Confirm','Yes','No','Cancel','Cancel');
switch answer
case 'Yes'
[filename,pathname] = uiputfile('default','Save your GUI settings');
if pathname == 0 %if the user pressed cancelled, then we exit this callback
return
end
%construct the path name of the save location
saveDataName = fullfile(pathname,filename);
%saves the gui data
hgsave(saveDataName);
delete(hObject);% Hint: delete(hObject) closes the figure
close all;
case 'No'
delete(hObject);% Hint: delete(hObject) closes the figure
close all;
end

Accepted Answer

Paulo Silva
Paulo Silva on 8 Jun 2011
I tried your code and it works without any of the problems you describe, they might be caused by other code.
Just two small suggestions, the close all doesn't need the ; at the end, it's common to both Yes and No responses (also the cancel got the return line), you can remove those two "close all" lines put it after the end of that code.
  6 Comments
Paulo Silva
Paulo Silva on 8 Jun 2011
Unless you are trying to close several figures you don't need the close all, just use the delete(... to delete the figure after that code.
sadel
sadel on 8 Jun 2011
This is the answer: delete(gcf). thank you!!!

Sign in to comment.

More Answers (0)

Categories

Find more on Startup and Shutdown in Help Center and File Exchange

Tags

No tags entered yet.

Community Treasure Hunt

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

Start Hunting!