您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > matlab的图形用户界面设计
第八讲MATLAB图形用户界面设计所谓图形用户界面是指由窗口、菜单、对话框等各种图形对象组成的用户界面。在这种用户界面下,用户的操作是通过“选择”各种图形对象来实现的。一、图形窗口的控制一、图形窗口的控制1.建立图形窗口要建立一个图形窗口,有两种方法:(1)菜单操作:在MATLAB命令窗口选择File菜单中的New命令,再选取Figure子菜单,这样将建立一个标准的MATLAB图形窗口;(2)命令操作:使用figure函数建立一个图形窗口,并返回该窗口的句柄。调用figure函数的一般格式为:窗口句柄=figure(属性名1,属性值1,属性名2,属性值2,…)MATLAB通过对属性的操作来改变图形窗口的形式。2.图形窗口的常用属性(1)MenuBar属性MenuBar属性的取值可以是figure(缺省值)或none。用来控制图形窗口是否应该具有菜单条。如果它的属性值为none,则表示该图形窗口没有菜单条。这时用户可以根据后面将介绍的uimenu()函数来加入自己的菜单条,如果属性值为figure,则该窗口将保持图形窗口默认的菜单条,这时也可以采用uimenu()函数在原默认的图形窗口菜单后面添加新的菜单项。一、图形窗口的控制(2)Name属性Name属性的取值可以是任何字符串,它的缺省值为空。这个字符串作为图形窗口的标题。一般情况下,其标题形式为:FigureNo.1:字符串。2.图形窗口的常用属性一、图形窗口的控制(3)NumberTitle属性NumberTitle属性的取值是on(缺省值)或off。决定着在图形窗口的标题中是否以“FigureNo.n:”为标题前缀,这里n是图形窗口的序号,即句柄值。【例1】建立一个图形窗口。该图形窗口起始于屏幕左下角、宽度和高度分别为300像素点和150像素点,背景颜色为绿色,且当用户从键盘按下任意一个键时,将显示“Hello,KeyboardKeyPressed.”字样。一、图形窗口的控制程序为:hf=figure('Color',[0,1,0],'Position',[1,1,300,150],...'Name','图形窗口示例','NumberTitle','off','MenuBar','none',...'KeyPressFcn','disp(''Hello,KeyboardKeyPressed.'')');3.图形窗口控制函数(1)设置图形窗口属性函数setset函数的调用格式为:set(窗口句柄,属性名1,属性值1,属性名2,属性值2,…)(2)获取句柄信息函数get调用格式为:V=get(句柄名,属性名)其中V是返回的属性值。一、图形窗口的控制二、菜单设计MATLAB的各个图形窗口有自己的菜单栏,包括File、Edit、Windows和Help等菜单项。为了建立用户自己的菜单系统,可以先将图形窗口的MenuBar属性事先设置为none,以取消图形窗口缺省的菜单,然后再建立用户自己的菜单。二、菜单设计1.建立用户菜单要建立用户菜单可用uimenu函数,因其调用方法不同,该函数可以用于建立菜单条中的菜单项和子菜单中的菜单项。建立菜单条的函数调用形式为:菜单项句柄=uimenu(图形窗口句柄,属性名1,属性值1,属性名2,属性值2,…)建立子菜单的函数调用形式为:子菜单句柄=uimenu(父菜单句柄,属性名1,属性值1,属性名2,属性值2,…)二、菜单设计2.菜单对象常用属性(1)Tag属性Tag属性的取值是字符串,它定义了该菜单对象的一个标识值。定义了Tag属性后,在任何程序中都可以通过这个标识值找出该菜单对象。(2)Type属性Type属的取值总是uimenu,这个属性值标明图形对象的类型。对菜单对象,其类型就是uimenu,用户不能改写这个属性。(3)UserData属性UserData属性的取值是一个矩阵,缺省值为空矩阵,用户可以在这个属性中保存与该菜单对象相关的重要数据或信息,借此可以达到传递数据或信息的目的。可以用set和get函数访问该属性。二、菜单设计菜单条中含有File和Help两个菜单项。如果选择File中的New选项,则将显示NewItem字样,如果选择File中的Open选项,则将显示出OpenItem字样。File中的Save菜单项初始时处于禁选状态,在选择Help选项之后将此菜单项恢复成可选状态,如果选择File中的Save选项,则将出现一个新的菜单(三级菜单),其中共有两个子菜单项Textfile和Graphicsfile,如果选择第1项,则将变量k1和k2分别赋为0和1,然后调用file01.m文件来进行相应的处理(该文件需要另行编写),如果选择第2项,则将变量k1和k2分别赋为1和0,然后调用file10.m文件来进行相应的处理(该文件也需要另行编写)。如果选择File中的SaveAs选项,则将显示SaveAsItem字样。如果选择File中的Exit选项,则将关闭当前窗口。如果选择Help中About…选项,则将显示HelpItem字样,并将Save菜单设置成可选状态。【例2】建立一个菜单系统。二、菜单设计程序如下:screen=get(0,'ScreenSize');W=screen(3);H=screen(4);hf=figure('Color',[1,1,1],'Position',[1,1,0.4*W,0.3*H],...'Name','菜单设计示例一','NumberTitle','off','MenuBar','none');hfile=uimenu(hf,'label','&File');hhelp=uimenu(hf,'label','&Help');uimenu(hfile,'label','&New','call','disp(''NewItem'')');uimenu(hfile,'label','&Open','call','disp(''OpenItem'')');hsave=uimenu(hfile,'label','&Save','Enable','off');uimenu(hsave,'label','Textfile','call','k1=0;k2=1;file01;');uimenu(hsave,'label','Graphicsfile','call','k1=1;k2=0;file10;');uimenu(hfile,'label','Save&As','call','disp(''SaveAsItem'')');uimenu(hfile,'label','&Exit','separator','on','call','close(hf)');uimenu(hhelp,'label','About...','call',...['disp(''HelpItem'');','set(hsave,''Enable'',''on'')']);二、菜单设计三、对话框设计1.对话框的组成1.按钮(PushButton)2.单选按钮(RadioButton)3.复选框(CheckBox)4.列表框(ListBox)5.弹出式列表框(PopupListBox)6.编辑框(EditBox)7.滑动条(Slider)8.静态文本(StaticText)9.边框(Frame)三、对话框设计2.对话框的设计1).建立控制对象MATLAB提供了用于建立控制对象的函数uicontrol,其调用格式为:对象句柄=uicontrol(窗口句柄,属性名1,属性值1,属性名2,属性值2,…)2).控制对象的属性三、对话框设计【例3】建立一个对话框。三、对话框设计在该对话框上分别建立静态文本显示InputBox和OutputBox。它们的下方各有一个修饰用边框,左边边框内加入了3个单选按钮和一个编辑框,用于确定Y的值,右边边框有一个静态文本,用于显示Y的值。最后在该对话框中加入了两个按钮GetY和Cancel,若按下了GetY按钮,则将执行Scom回调命令,在右边边框的静态文本中显示左边边框所确定的Y值,若选择了Cancel按钮,则将关闭此对话框。
本文标题:matlab的图形用户界面设计
链接地址:https://www.777doc.com/doc-3186502 .html