第五讲 MATLAB中GUI设计.pptVIP

  • 9
  • 0
  • 约1.14万字
  • 约 53页
  • 2017-06-13 发布于湖北
  • 举报
第五讲 MATLAB中GUI设计

5.1 菜单设计 一、 用户菜单的建立 建立一级菜单项的函数调用形式为: 主菜单对象句柄=uimenu(图形窗口句柄,属性名1,属性值1,属性名2,属性值2,…) plotopt=uimenu(gcf,label,plotoptions) 建立子菜单项的函数调用形式为: 子菜单对象句柄=uimenu(父菜单对象句柄,属性名1,属性值1,属性名2,属性值2,…) plotlt=uimenu(plotopt,Label,Line Types); plotsym=uimenu(plotopt,Label,Plot Symbol, Separator, on ); plotcol=uimenu(plotopt,Label,Plot color,Separator,on); 例5.1 建立“图形演示系统”菜单。菜单条中含有3个菜单项:Plot、Option和Quit。Plot中有Sine Wave和Cosine Wave两个子菜单项,分别控制在本图形窗口画出正弦和余弦曲线。Option菜单项的内容包括:Grid on和Grid off控制给坐标轴加网格线,Box on和Box off控制给坐标轴加边框,而且这4项只有在画有曲线时才是可选的,Figure Color控制图形窗口背景颜色。Quit控制是否退出系统。 二 快捷菜单 在MATLAB中,可以使用uicontextmenu函数和图形对象的UIContextMenu属性来建立快捷菜单,具体步骤为: (1)利用uicontextmenu函数建立快捷菜单。 (2)利用uimenu函数为快捷菜单建立菜单项。 (3)利用set函数将该快捷菜单和某图形对象联系起来。 例5.2 绘制曲线y=2e-0.5xsin(2πx),并建立一个与之相联系的快捷菜单,用以控制曲线的线型和曲线宽度。 x=0:pi/100:2*pi; y=2*exp(-0.5*x).*sin(2*pi*x); hl=plot(x,y); hc=uicontextmenu; %建立快捷菜单 hls=uimenu(hc,Label,线型); %建立菜单项 hlw=uimenu(hc,Label,线宽); uimenu(hls,Label,虚线,Call,set(hl,LineStyle,:);); uimenu(hls,Label,实线,Call,set(hl,LineStyle,-);); uimenu(hlw,Label,加宽,Call,set(hl,LineWidth,2);); uimenu(hlw,Label,变细,Call,set(hl,LineWidth,0.5);); set(hl,UIContextMenu,hc); %将该快捷菜单和曲线对象联系起来 5.2 控件设计 5.2.1 控件 (1)按钮(Push Button)。 (2)切换(按下/弹起)按钮(Toggle Button)。 (3)单选按钮(Radio Button)。 (4)复选框(Check Box)。 (5)列表框(List Box)。 (6)弹出框(Popup Menu)。 (7)编辑框(Edit Box)。 (8)滑动条(Slider)。 (9)静态文本(Static Text)。 (10)边框(Frame)。 5.2.2 对话框的设计 1. 建立控件对象 MATLAB提供了用于建立控件对象的函数uicontrol,其调用格式为: 对象句柄=uicontrol(图形窗口句柄,属性名1,属性值1,属性名2,属性值2,…) 其中各个属性名及可取的值和前面介绍的uimenu函数相似,但也不尽相同,下面将介绍一些常用的属性。 2. 控件对象的属性 MATLAB的10种控件对象使用相同的属性类型,但是这些属性对于不同类型的控件对象,其含义不尽相同。除Children、Parent、Tag、Type、UserData、Visible等公共属性外,还有一些常用的特殊属性。 例5.3 建立数制转换对话框。在左边输入一个十进制整数和2~16之间的数,单击“转换”按钮能在右边得到十进制数所对应的2~16进制字符串,单击“退出”按钮退出对话框。 程序调用了trdec.m函数文件,该函数的作用是将任意十进制整数转换为2~16进制字符串。trdec.m函数文件如下: function dec=trdec(n,b) ch1=0123456789ABCDEF; %十六进制的16个符号 k

文档评论(0)

1亿VIP精品文档

相关文档