2013-08-03 1 views
1

GUIDE를 사용하여 GUI를 만들고 대화 상자를 사용하여 그림을 닫으려고합니다.대화 상자가있는 MATLAB GUI 닫기

나는이

selection = questdlg('Close This Figure?',... 
     'Close Request Function',... 
     'Yes','No','Yes'); 
    switch selection, 
     case 'Yes', 
     delete(gcf) 
     case 'No' 
     return 
    end 

있는 버튼이 있고 그것을 잘 작동하지만 난 main button이 같은 일을하고 싶다.

나는

function varargout = file_name(varargin) 
... 

이 다음을 넣어 tryed하지만 작동하지 않습니다. 어떤 제안? 함수에서 코드 위의

답변

0

사용 말 :

%Save in myclose_callback.m 

function myclose_callback(src,evnt) 
selection = questdlg('Close This Figure?',... 
     'Close Request Function',... 
     'Yes','No','Yes'); 
    switch selection, 
     case 'Yes', 
     delete(gcf) 
     case 'No' 
     return 
    end 
end 

그런 다음 사용

set(0,'DefaultFigureCloseRequestFcn',@myclose_callback)

+0

:

%From other .m script or from command window figure('CloseRequestFcn',@myclose_callback) 

모든 그림에 대한 기본 콜백 사용으로이 작업을하려면 먼저 나는 첫 번째 코드를 시도하고 나에게 오류를 주었다. 이 코드를 어디에 넣거나 함수를 호출해야합니까? – mafap

+0

및'figure ('CloseRequestFcn', @ myclose_callback)'? 내 주요 * .m 파일의 시작에서? – mafap

+0

그것은 작동하지 않았다, 나는 끝에 putted하지만 아무것도 일어나지 않습니다. 내 그림을 닫을 때마다이 대화 상자가 나타나기를 원합니다 ... – mafap