h0=figure('toolbar','none',... 'position',[200 150 450 250],... 'name','实例33'); x=0:0.5:2*pi; y=sin(x); h=plot(x,y); grid on huidiao=[... 'if i==1,',... 'i=0;,',... 'y=cos(x);,',... 'delete(h),',... 'set(hm,''string'',''正弦函数''),',... 'h=plot(x,y);,',... 'grid on,',... 'else if i==0,',... 'i=1;,',... 'y=sin(x);,',... 'set(hm,''string'',''余弦函数''),',... 'delete(h),',... 'h=plot(x,y);,',... 'grid on,',... 'end,',... 'end']; hm=uicontrol(gcf,'style','pushbutton',... 'string','余弦函数',... 'callback',huidiao); i=1; set(hm,'position',[250 20 60 20]); set(gca,'position',[0.2 0.2 0.6 0.6]) title('按钮的使用') hold on 实例34:栅格控制按钮
h0=figure('toolbar','none',... 'position',[200 150 450 250],... 'name','实例34'); x=0:0.5:2*pi; y=sin(x); plot(x,y) huidiao1=[... 'set(h_toggle2,''value'',0),',... 'grid on,',... ]; huidiao2=[... 'set(h_toggle1,''value'',0),',... 'grid off,',... ]; h_toggle1=uicontrol(gcf,'style','togglebutton',... 'string','grid on',... 'value',0,... 'position',[20 45 50 20],... 'callback',huidiao1);
h_toggle2=uicontrol(gcf,'style','togglebutton',... 'string','grid off',... 'value',0,... 'position',[20 20 50 20],... 'callback',huidiao2); set(gca,'position',[0.2 0.2 0.6 0.6]) title('开关按钮的使用') 实例35:编辑框的使用
h0=figure('toolbar','none',... 'position',[200 150 350 250],... 'name','实例35'); f='Please input the letter'; huidiao1=[... 'g=upper(f);,',... 'set(h2_edit,''string'',g),',... ]; huidiao2=[... 'g=lower(f);,',... 'set(h2_edit,''string'',g),',... ]; h1_edit=uicontrol(gcf,'style','edit',... 'position',[100 200 100 50],... 'HorizontalAlignment','left',... 'string','Please input the letter',... 'callback','f=get(h1_edit,''string'');',... 'background','w',... 'max',5,... 'min',1); h2_edit=uicontrol(gcf,'style','edit',... 'HorizontalAlignment','left',... 'position',[100 100 100 50],... 'background','w',... 'max',5,... 'min',1); h1_button=uicontrol(gcf,'style','pushbutton',... 'string','小写变大写',... 'position',[100 45 100 20],... 'callback',huidiao1); h2_button=uicontrol(gcf,'style','pushbutton',... 'string','大写变小写',... 'position',[100 20 100 20],... 'callback',huidiao2); 实例36:弹出式菜单
h0=figure('toolbar','none',... 'position',[200 150 450 250],... 'name','实例36'); x=0:0.5:2*pi; y=sin(x); h=plot(x,y); grid on hm=uicontrol(gcf,'style','popupmenu',... 'string',... 'sin(x)|cos(x)|sin(x)+cos(x)|exp(-sin(x))',... 'position',[250 20 50 20]); set(hm,'value',1) huidiao=[... 'v=get(hm,''value'');,',... 'switch v,',... 'case 1,',... 'delete(h),',... 'y=sin(x);,',... 'h=plot(x,y);,',... 'grid on,',... 'case 2,',... 'delete(h),',... 'y=cos(x);,',... 'h=plot(x,y);,',... 'grid on,',... 'case 3,',... 'delete(h),',... 'y=sin(x)+cos(x);,',... 'h=plot(x,y);,',... 'grid on,',... 'case 4,',... 'delete(h),',... 'y=exp(-sin(x));,',... 'h=plot(x,y);,',... 'grid on,',... 'end']; set(hm,'callback',huidiao) set(gca,'position',[0.2 0.2 0.6 0.6]) title('弹出式菜单的使用') 实例37:滑标的使用
h0=figure('toolbar','none',... 'position',[200 150 450 250],... 'name','实例37'); [x,y]=meshgrid(-8:0.5:8); r=sqrt(x.^2+y.^2)+eps; z=sin(r)./r; h0=mesh(x,y,z); h1=axes('position',... [0.2 0.2 0.5 0.5],... 'visible','off'); htext=uicontrol(gcf,... 'units','points',... 'position',[20 30 45 15],... 'string','brightness',... 'style','text'); hslider=uicontrol(gcf,... 'units','points',... 'position',[10 10 300 15],... 'min',-1,... 'max',1,... 'style','slider',... 'callback',... 'brighten(get(hslider,''value''))'); 实例38:多选菜单
h0=figure('toolbar','none',... 'position',[200 150 450 250],... 'name','实例38'); [x,y]=meshgrid(-8:0.5:8); r=sqrt(x.^2+y.^2)+eps; z=sin(r)./r; h0=mesh(x,y,z); hlist=uicontrol(gcf,'style','listbox',... 'string','default|spring|summer|autumn|winter',... 'max',5,... 'min',1,... 'position',[20 20 80 100],... 'callback',[... 'k=get(hlist,''value'');,',... 'switch k,',... 'case 1,',... 'colormap default,',... 'case 2,',... 'colormap spring,',... 'case 3,',... 'colormap summer,',... 'case 4,',... 'colormap autumn,',... 'case 5,',... 'colormap winter,',... 'end']); 实例39:菜单控制的使用
h0=figure('toolbar','none',... 'position',[200 150 450 250],... 'name','实例39'); x=0:0.5:2*pi; y=cos(x); h=plot(x,y); grid on set(gcf,'toolbar','none') hm=uimenu('label','example'); huidiao1=[... 'set(hm_gridon,''checked'',''on''),',... 'set(hm_gridoff,''checked'',''off''),',... 'grid on']; huidiao2=[... 'set(hm_gridoff,''checked'',''on''),',... 'set(hm_gridon,''checked'',''off''),',... 'grid off']; hm_gridon=uimenu(hm,'label','grid on',... 'checked','on',... 'callback',huidiao1); hm_gridoff=uimenu(hm,'label','grid off',... 'checked','off',... 'callback',huidiao2); 实例40:UIMENU菜单的应用
h0=figure('toolbar','none',... 'position',[200 150 450 250],... 'name','实例40'); h1=uimenu(gcf,'label','函数'); h11=uimenu(h1,'label','轮廓图',... 'callback',[... 'set(h31,''checked'',''on''),',... 'set(h32,''checked'',''off''),',... '[x,y,z]=peaks;,',... 'contour3(x,y,z,30)']); h12=uimenu(h1,'label','高斯分布',... 'callback',[... 'set(h31,''checked'',''on''),',... 'set(h32,''checked'',''off''),',... 'mesh(peaks);,',... 'axis tight']); h13=uimenu(h1,'label','Sinc函数',... 'callback',[... 'set(h31,''checked'',''on''),',... 'set(h32,''checked'',''off''),',... '[x,y]=meshgrid(-8:0.5:8);,',... 'r=sqrt(x.^2+y.^2)+eps;,',... 'z=sin(r)./r;,',... 'mesh(x,y,z)']); h2=uimenu(gcf,'label','色彩'); hl2(1)=uimenu(h2,'label','Default',... 'checked','on',... 'callback',... [... 'set(hl2,''checked'',''off''),',... 'set(hl2(1),''checked'',''on''),',... 'colormap(''default'')']); hl2(2)=uimenu(h2,'label','spring',... 'callback',... [... 'set(hl2,''checked'',''off''),',... 'set(hl2(2),''checked'',''on''),',... 'colormap(spring)']); hl2(3)=uimenu(h2,'label','Summer',... 'callback',... [... 'set(hl2,''checked'',''off''),',... 'set(hl2(3),''checked'',''on''),',... 'colormap(summer)']); hl2(4)=uimenu(h2,'label','Autumn',... 'callback',... [... 'set(hl2,''checked'',''off''),',... 'set(hl2(4),''checked'',''on''),',... 'colormap(autumn)']); hl2(5)=uimenu(h2,'label','Winter',... 'callback',... [... 'set(hl2,''checked'',''off''),',... 'set(hl2(5),''checked'',''on''),',... 'colormap(winter)']); h3=uimenu(gcf,'label','坐标选项'); h31=uimenu(h3,'label','Axis on',... 'callback',... [... 'axis on,',... 'set(h31,''checked'',''on''),',... 'set(h32,''checked'',''off'')']); h32=uimenu(h3,'label','Axis off',... 'callback',... [... 'axis off,',... 'set(h32,''checked'',''on''),',... 'set(h31,''checked'',''off'')']); 实例41:除法计算器
(责任编辑:泉水) |