部署的MATLAB文件未启动

部署的MATLAB文件未启动,matlab,Matlab,请注意,我有一段代码涉及到保存gui状态(使用DougHull的方法)。 问题是脚本可以正常编译,但只有在我使用deploytool运行它时才会弹出并消失。我使用的是MatlabR2012B function savestate3 S.fh=figure('NumberTitle','off',... 'Visible','on','Position',[360 400 450 285],... 'closerequestfcn',{@fh_crfcn}); S.tg(1)

请注意,我有一段代码涉及到保存gui状态(使用DougHull的方法)。 问题是脚本可以正常编译,但只有在我使用deploytool运行它时才会弹出并消失。我使用的是MatlabR2012B

function savestate3

S.fh=figure('NumberTitle','off',...
    'Visible','on','Position',[360 400 450 285],...
    'closerequestfcn',{@fh_crfcn});


S.tg(1)=uicontrol(S.fh,'Style','toggle','String','Semester',...
    'pos',[15 250 100 25],'val',0,'visible','on');  
S.tg(2)=uicontrol(S.fh,'Style','toggle','String','Details',...
    'pos',[135 250 100 25],'val',0,'visible','on'); 
S.ed(1)=uicontrol(S.fh,'Style','edit','String','Edit Text',...
    'pos',[250 70 100 25],'visible','off');  
S.lb(1)=uicontrol(S.fh,'Style','listbox','String',{'One','Two','Three'},...
    'pos',[100 170 100 70],'visible','off'); 
S.cb(1)=uicontrol(S.fh,'Style','checkbox','Value',1,'String','Check Me',...
    'pos',[250 170 100 25],'visible','off'); 

set(S.tg(:),'callback',{@tg_call,S})


guidata(S.fh,S)
restoreState(S);

function saveState(handles)
    state2.editstr=get(S.ed(1),'String');
    state2.listval=get(S.lb(1),'value');
    state2.checkval=get(S.cb(1),'value');

    save state1.mat state2
end

function restoreState(handles)

        load 'state1.mat' 'state2'
        set(S.ed(1),'string',state2.editstr,'FontSize',12,'FontWeight','bold');
        set(S.lb(1),'value',state2.listval);
        set(S.cb(1),'value',state2.checkval);
end


function fh_crfcn(varargin)
    saveState(S)
    delete(S.fh)
end



%TOGGLE OPERATIONS
function []=tg_call(varargin)
%Toggle Operations
[h,S]=varargin{[1,3]};
if get(h,'val')==0
    set(h,'val',1)
end

switch h
    case S.tg(1)
    set(S.tg(2),'val',0)
    set(S.ed(1),'visible','on')
    set(S.lb(1),'visible','on')
    set(S.cb(1),'visible','off')
    saveState(S)
    case S.tg(2)
    set(S.tg(1),'val',0)
    set(S.cb(1),'visible','on')
    set(S.ed(1),'visible','off')
    set(S.lb(1),'visible','off')
    saveState(S)
end
end

end

我知道了,但仍然不知道这是否是一件“完美”的事情

编译之后,我将mat文件state1.mat放在distr/src文件夹中,它就工作了