www.gusucode.com > 《MATLAB神经网络仿真与应用》[张德丰]的所有[程序源代码] > 第10章/li10_6.m

    function guiexample
set(0,'Units','pixels');
Ssize=get(0,'ScreenSize');         %获得屏幕的大小
%创建对话框,用来装载相应控件,设置对话框的名称和位置相应属性,代码如下:
H.gui=dialog('WindowStyle','normal'),...              %设置对话框
             'Resize','on',...
             'Name','GUI_Example',...
             'Units','pixels',...
             'Position',[(Ssize(3)-500)/2 (Ssize(4)-400)/2 500 400];
%创建坐标轴,设置其位置,代码如下:
H.axes=axes('Parent',H.gui,...                        %设置坐标轴
             'Units','pixels',...
             'Position',[30 30 380 340]);
%创建目标按钮,设置其位置,代码如下:
H.Button=uicontrol('Style','pushbutton',...              %目标按钮
                   'Parent',H.gui,...
                   'Units','pixels',...
                   'Position',[100 100 100 60]);
%保存目标按钮的默认位置,并在目标按钮位置上显示其坐标,代码如下:
DefPos=get(H.Button,'Position');                     %目标按钮的默认位置
set(H.Button,'UserData',DefPos)                     %保存目标按钮的默认位置
%显示目标按钮的位置坐标
set(H.Button,'String',strcat(num2str(DefPos(1)),',',num2str(DefPos(2))))

H.Hslider=uicontrol('Style','slider',...                  %水平slider
                    'Parent',H.gui,...
                    'Units','pixels',...
                    'Position',[30 375 360 20],...
                    'Min',30,'Max',370,...
                    'Value',DefPos(1),...
                    'Callback',{@local_Hslider,H});
H.Vslider=uicontrol('Style','slider',...                   %竖直slider
                    'Parent',H.gui,...
                    'Units','pixels',...
                    'Position',[415 30 20 330],...
                    'Min',30,'Max',330,...
                    'Value',DefPos(2),...
                    'Callback',{@local_Vslider,H});
H.Default=uicontrol('Style','pushbutton',...            %默认按钮,恢复目标按钮的位置
                   'Parent',H.gui,...
                   'Units','pixels',...
                   'Position',[440 200 60 30],...
                   'String','默认',...
                   'Callback',{@local_Default,H});
Hm=uimenu('Parent',H.gui,'Label','File');            %菜单
uimenu('Parent',Hm,...
       'Label','Default',...
       'Callback',{@local_Default,H});            %调用默认按钮
uimenu('Parent',Hm,...
       'Label','Close',...
       'Callback','close(gcbf)');