ch7atlab图形界面设计.ppt_第1页
ch7atlab图形界面设计.ppt_第2页
ch7atlab图形界面设计.ppt_第3页
ch7atlab图形界面设计.ppt_第4页
ch7atlab图形界面设计.ppt_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Matlab用户图形界面设计,一、菜单设计,二、快捷菜单设计,三、对话框设计,一、菜单设计,图形用户界面(Graphical User Interface)(GUI),由窗口、菜单、对话框等各种图形对象组成的用户界面称为图形用户界面,Matlab基本图形用户界面包含三类:,1)菜单对象(Uimeun),2)快捷菜单对象(Uicontextmeun),3)用户控件对象(Uicontrol),1、菜单设计,一、菜单设计,Matlab用户菜单对象是图形窗口(figure)的子对象,所以菜单总是在某一图形窗口中,注:Matlab的缺省图形窗口有自带的菜单栏,因而在设计自己的菜单栏时可先将图形窗口(fi

2、gure)的属性Menubar设为none以取消缺省菜单,1.1、建立用户菜单,用户菜单通常包含一级菜单(菜单条)和二级菜单,有时还需要建立三级菜单,而每一级菜单又包含若干项子菜单,使用Uimenu函数可以建立子菜单,根据其调用方式,该函数可以建立菜单和子菜单。,一、菜单设计,Uimenu的调用格式:,建立一级菜单项,一级菜单句柄=Uimenu(图形窗口句柄,属性名1,属性值1,属性名2,属性值2,),建立子菜单项,子菜单句柄=Uimenu(父菜单句柄,属性名1,属性值1,属性名2,属性值2,),注:1)建立一级菜单时若省略图形窗口句柄,则在当前窗口中建立菜单,若无图形窗口,则新建一图形窗口,

3、然后在该窗口建立菜单,注:2)建立子菜单则必须指定副菜单的句柄,否则该菜档就直接建立在图形窗口的菜单条上。,例:在图形窗口上建立菜单名File,File下包含两个一级子菜单。,hm=uimenu(gcf,Label,File); hm1=uimenu(hm,Label,Save); hm2=uimenu(hm,Label,Save as),1.2、菜单常用属性,除象Children, Parent, Tag, Type, UserData, Visible 等公共属性外还有其特有的属性,较重要的有:,一、菜单设计,一、菜单设计,注:若在label的属性值的某字符前加上%获取屏幕的大小 w=sc

4、(3); h=sc(4); %建立自定义的图形窗口 h1=figure(color,1,1,1,position,0.2*h,0.2*h,0.6*w,0.4*h,. name,图形演示系统,numbertitle,off,menubar,none);,%建立菜单栏中Plot菜单 hp=uimenu(h1,label,uimenu(hp,label,cosine wave,Call,. t=-pi:pi/40:pi;,hs=plot(t,cos(t);,. set(hgon,Enable,on);,. set(hgoff,Enable,on);,. set(hbon,Enable,on);,.

5、set(hboff,Enable,on););,%建立菜单栏中Option菜单 ho=uimenu(h1,label,%建立一级子菜单Figure Color的二级子菜单 uimenu(hfc,label,%建立菜单栏中Quit菜单 hc=uimenu(h1,label,快捷菜单是用鼠标右键单击图形窗口中某对象时在鼠标处产生的菜单,二、快捷菜单设计,1)使用Uicontextmenu函数创建快捷菜单2)使用Uimenu函数为快捷菜单创建子菜单3)使用set函数将和某图形对象联系起来,快捷菜单使用Uicontextmenu函数及其属性来创建,具体步骤如下:,特点:1)出现的位置不固定2)总是和某

6、个图形对象相联系,例:绘制曲线y=sin(5x)sin(x)的图形,并建立与之联系的快捷菜单,来控制曲线的线型与线宽。,x=0:pi/100:2*pi; y=2*sin(5*x).*sin(x); hl=plot(x,y); %建立快捷菜单 hc=uicontextmenu; %建立快捷菜单和图形对象的联系 set(hl,uicontextmenu,hc); %建立快捷菜单一级子菜单 hls=uimenu(hc,label,线型) hlw=uimenu(hc,label,线宽) %建立二级子菜单 uimenu(hls,label,虚线,call,set(hl,linestyle,:);); u

7、imenu(hls,label,实线,call,set(hl,linestyle,-);); uimenu(hlw,label,加宽,call,set(hl,linewidth,2);); uimenu(hlw,label,变细,call,set(hl,linewidth,.5););,二、快捷菜单设计,1、对话框控件,三、对话框设计,Matlab有以下十类控件,按钮,双位按钮,单选按钮,复选框,列表框,弹出框,编辑框,滑动条,静态文本,边框,1、对话框设计,三、对话框设计,1)建立控件对象,Matlab使用uicontrol函数建立控件对象,调用格式为:,对象句柄=uicontrol(图形窗

8、口句柄,属性名1,属性值1,属性名2,属性值2,),2)控件对象属性,Matlab的10种控件对象使用相同的属性类型,但对不同的控件,其含义不尽相同,除象Children, Parent, Tag, Type, UserData, Visible 等公共属性外还有其特有的属性:,三、对话框设计,三、对话框设计,Max和Min属性,缺省值分别为1和0,对不同的对象,这两个属性有不同的含意.,单选框和复选框:激活时,Value的属性值为Max,否则为Min.,滑动条:要求MaxMin,Max定义滑动条的最大值, Min定义滑动条的最小值.,编辑框:若Max-Min1则编辑框接受多行输入,否则仅接受

9、单行输入.,列表框:若Max-Min1则列表框中允许有多个选择项,否则仅有一个选择项.,注:边框、静态文本框、弹出框不使用该属性.,三、对话框设计,Value属性,三、对话框设计,属性值可以是向量,也可以是数值,依赖于控件类型,单选框和复选框:激活时,其Value属性值为Max,否则为Min.,滑动条:Value的属性值为Min与Max之间的值,其由游标位置确定的。,弹出框:Value的属性值为选中项的序号,列表框:Value的属性值为高亮项的序号,3)建立控件对象实例,例1、建立按钮对象:当单击按钮时绘制正弦曲线,同时建立双位按钮,用于控制是否给坐标加网格线,sc=get(0,screensize); w=sc(3);h=sc(4); h1=figure(color,1,1,1,. position,0.2*h,0.2*h,0.6*w,0.4*h,. name,图形演示系统No.2,. numbertitle,off,menubar,none); pbstart=uicontrol(gcf,Style,push,. Position,20,20,100,25,String,start plot, . CallBack,axes(position,.2,.2,.6,.6);. t=

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论