今天突然想到主函数与子函数,猜测是否可以解决上一篇文章的问题,故记之。
上一篇(MATLAB GUI 纯代码编写)对于回调函数方面写了一个调用外部文件的方式如下:
'Callback','Name_Callback'
其中Name_Callback,表示外部回调函数的文件名。
主函数与子函数的回调方式就是把GUI写在一个主函数里面,再编写所要实现的功能函数,格式如下:
function 主函数名
注释
函数体(我的是GUI)
end
function 子函数名
注释
函数体
end
......
调用方式是:
'Callback',@子函数名
案例:创建一个窗口,一个按钮控件,编写控件的回调函数
代码:
%————关于函数GUI解决方案————%
function main()
%--1.创建窗体环境
h = figure(...
'Menubar','none',...
'NumberTitle','off',...
'Name','函数GUI解决方案');
%--2.创建一个按钮
PushButton = uicontrol(...
'Tag','PushButton1',...
'String','测试回调函数',...
'Style','pushbutton',...
'Units','normal',...
'Position',[0.4,0.4,0.2,0.1],...
'Fontsize',12,...
'Callback',@PushButton1_Callback);
end
%--3.编写回调函数,子函数
function PushButton1_Callback(hObect,eventdata,handles)
%-----------回调函数的编写------------%
h1 =dialog('name','回调函数','units','normalized','position',[0.4,0.4,0.3,0.2]);
uicontrol(h1,...
'Style','text',...
'Units','normal',...
'String','一个回调函数的测试',...
'Position',[0.3,0.4,0.4,0.2],...
'Fontsize',15);
end