欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    第八章__MATLAB_图形用户界面.ppt

    • 资源ID:85138469       资源大小:569KB        全文页数:41页
    • 资源格式: PPT        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第八章__MATLAB_图形用户界面.ppt

    第八章 MATLAB 图形用户界面设计1MATLAB图形用户界面设计u什么是什么是MATLAB图形用户界面设计?图形用户界面设计?所谓图形用户界面所谓图形用户界面GUI(Graphical User Interfaces)是指由窗是指由窗口、菜单、对话框等各种口、菜单、对话框等各种图形对象图形对象组成的用户界面组成的用户界面在这种用户界面下,用户的命令和对程序的控制是通过在这种用户界面下,用户的命令和对程序的控制是通过“选择选择”各种图形对象来实现的。各种图形对象来实现的。u图形对象图形对象 Figure(图形窗口图形窗口)Uicontrol(用户控件用户控件)Axes(坐坐标标轴轴)Uimenu(用户菜单用户菜单)Line(曲曲线线)Surface(曲曲面面)Rectangle(方框方框)Patch(区域块区域块)Image(图像图像)Text(文字文字)Light(光源光源)Root(屏幕屏幕)2主要内容u菜单设计菜单设计 u对话框设计对话框设计 u可视化图形用户界面设计可视化图形用户界面设计 3菜单设计uMATLAB的图形窗口有默认的菜单栏,也允许用户设计的图形窗口有默认的菜单栏,也允许用户设计自己所需要的菜单系统自己所需要的菜单系统菜单对象是图形对象的子对象,菜单设计总在某一图形窗口中进菜单对象是图形对象的子对象,菜单设计总在某一图形窗口中进行。行。u建立用户菜单建立用户菜单uimenu函数函数建立一级菜单项的函数调用格式为:建立一级菜单项的函数调用格式为:一级菜单项句柄一级菜单项句柄=uimenu(图形窗口句柄图形窗口句柄,属性名,属性名1,属性值,属性值1,属,属性名性名2,属性值,属性值2,)建立子菜单项的函数调用格式为:建立子菜单项的函数调用格式为:子菜单项句柄子菜单项句柄=uimenu(一级菜单项句柄一级菜单项句柄,属性名,属性名1,属性值,属性值1,属,属性名性名2,属性值,属性值2,)可以缺省,缺省为当前窗口可以缺省,缺省为当前窗口必须指定必须指定4菜单对象常用属性u菜单对象具有菜单对象具有Children、Parent、Tag、Type、UserData、Visible等公等公共属性,除公共属性外,还有一些常用的特殊属性。共属性,除公共属性外,还有一些常用的特殊属性。菜单条的提示名称菜单条的提示名称 Label:它可以是一个任意字符串。在菜单项提示的它可以是一个任意字符串。在菜单项提示的字符串中允许用户使用字符串中允许用户使用 标志,以表示该符号后面的字符在显示时有一标志,以表示该符号后面的字符在显示时有一个下划线修饰,这使得用户可以用个下划线修饰,这使得用户可以用Alt键加该字符键来激活相应的菜单项。键加该字符键来激活相应的菜单项。回调函数回调函数 Callback:它可以为一个函数名称,也可以是一组它可以为一个函数名称,也可以是一组 MATLAB 命令。在该菜单被选中以后,命令。在该菜单被选中以后,MATLAB将自动地调用此回调函数来作出将自动地调用此回调函数来作出对相应菜单项的响应,如果没有设置一个合适的回调函数,则此菜单项对相应菜单项的响应,如果没有设置一个合适的回调函数,则此菜单项也将失去其应有的意义。也将失去其应有的意义。快捷键快捷键accelerator选中状态选中状态checked使能状态使能状态enabled菜单条位置菜单条位置position分隔符分隔符separator5菜单设计举例u建立图形演示系统菜单。菜单条中含有建立图形演示系统菜单。菜单条中含有3个菜单项:个菜单项:Plot、Option和和Quit。Plot中有中有Sine Wave和和Cosine Wave两个子菜单项两个子菜单项,分别控制在本图形,分别控制在本图形窗口画出正弦和余弦曲线。窗口画出正弦和余弦曲线。Option菜单项包含菜单项包含Grid on,Grid off,Box on,Box off和和Window Color子项子项,其中,其中Grid on和和Grid off控制给坐标轴控制给坐标轴加网格线,加网格线,Box on和和Box off控制给坐标轴加边框,控制给坐标轴加边框,而且这而且这4项只有在画项只有在画有曲线时才是可选的有曲线时才是可选的。Window Color控制图形窗口背景颜色。控制图形窗口背景颜色。Quit控制控制是否退出系统。是否退出系统。u程序如下:程序如下:screen=get(0,ScreenSize);W=screen(3);H=screen(4);figure(Color,1,1,1,Position,0.2*H,0.2*H,0.5*W,0.3*H,.Name,图形演示系统图形演示系统,NumberTitle,off,MenuBar,none);6菜单设计举例(续)(续)%定义定义Plot菜单项菜单项hplot=uimenu(gcf,Label,&Plot);uimenu(hplot,Label,Sine Wave,Call,.t=-pi:pi/20:pi;,plot(t,sin(t);,.set(hgon,Enable,on);,.set(hgoff,Enable,on);,.set(hbon,Enable,on);,.set(hboff,Enable,on););uimenu(hplot,Label,Cosine Wave,Call,.t=-pi:pi/20:pi;,plot(t,cos(t);,.set(hgon,Enable,on);,.set(hgoff,Enable,on);,.set(hbon,Enable,on);,.set(hboff,Enable,on););7菜单设计举例(续)(续)u%定义定义Option菜单项菜单项hoption=uimenu(gcf,Label,&Option);hgon=uimenu(hoption,Label,&Grid on,.Call,grid on,Enable,off);hgoff=uimenu(hoption,Label,&Grid off,.Call,grid off,Enable,off);hbon=uimenu(hoption,Label,&Box on,.separator,on,Call,box on,Enable,off);hboff=uimenu(hoption,Label,&Box off,.Call,box off,Enable,off);hwincor=uimenu(hoption,Label,&Window Color,Separator,on);uimenu(hwincor,Label,&Red,Accelerator,r,.Call,set(gcf,Color,r););uimenu(hwincor,Label,&Blue,Accelerator,b,.Call,set(gcf,Color,b););uimenu(hwincor,Label,&Yellow,Call,.set(gcf,Color,y););uimenu(hwincor,Label,&White,Call,.set(gcf,Color,w););8菜单设计举例(续)(续)u%定义定义Quit菜单项菜单项uimenu(gcf,Label,&Quit,Call,close(gcf);9快捷菜单u快捷菜单是快捷菜单是用鼠标右键单击某对象时用鼠标右键单击某对象时在屏幕上弹出的菜单在屏幕上弹出的菜单u这种菜单出现的位置是不固定的,而且总是和某个图形对这种菜单出现的位置是不固定的,而且总是和某个图形对象相联系。象相联系。u在在MATLAB中,可以使用中,可以使用uicontextmenu函数函数和图形对象和图形对象的的UIContextMenu属性属性来建立快捷菜单,具体步骤为:来建立快捷菜单,具体步骤为:(1)利用利用uicontextmenu函数建立快捷菜单。函数建立快捷菜单。(2)利用利用uimenu函数为快捷菜单建立菜单项。函数为快捷菜单建立菜单项。(3)利用利用set函数将该快捷菜单和某图形对象联系起来。函数将该快捷菜单和某图形对象联系起来。10快捷菜单示例u例例 绘制曲线绘制曲线 y=2e-0.5xsin(2x),并建立一个与之相联系的,并建立一个与之相联系的快捷快捷菜单菜单,用以控制曲线的,用以控制曲线的线型线型和曲线和曲线宽度宽度。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);%将该快捷菜单和曲线对象联系起将该快捷菜单和曲线对象联系起来来 11主要内容u菜单设计菜单设计 u对话框设计对话框设计 u可视化图形用户界面设计可视化图形用户界面设计 12对话框u对话框是对话框是重要的信息显示和获取输入数据重要的信息显示和获取输入数据的用户界面对象的用户界面对象是用户与计算机进行信息交流的临时窗口是用户与计算机进行信息交流的临时窗口主要通过主要通过用户控件用户控件对象建立对话框对象建立对话框u对话框的控件对话框的控件按钮按钮(Push Button)双位按钮双位按钮(Toggle Button)单选按钮单选按钮(Radio Button)复选框复选框(Check Box)列表框列表框(List Box)弹出框弹出框(Popup Menu)编辑框编辑框(Edit Box)滑动条滑动条(Slider)静态文本静态文本(Static Text)边框边框(Frame)13对话框的设计uMATLAB提供了用于建立控件对象的函数提供了用于建立控件对象的函数uicontrol,调,调用格式为:用格式为:对象句柄对象句柄=uicontrol(图形窗口句柄,属性名图形窗口句柄,属性名1,属性值,属性值1,属性名,属性名2,属性值,属性值2,)各个属性名及可取的值和前面介绍的各个属性名及可取的值和前面介绍的uimenu函数相似函数相似u控件对象的属性控件对象的属性公共属性公共属性控件对象作为图形对象所具有的属性控件对象作为图形对象所具有的属性14控件对象的属性u公共属性公共属性Children、Parent、Tag、Type、UserData、Visibleu控件对象的基本控制属性控件对象的基本控制属性BackgroundColor取值为颜色的预定义字符或取值为颜色的预定义字符或RGB数值数值Callback取值为字符串取值为字符串,可以是某个可以是某个M文件名或一小段文件名或一小段MATLAB语句,当用户激活某语句,当用户激活某个控件对象时,应用程序就运行该属性定义的子程序。个控件对象时,应用程序就运行该属性定义的子程序。Enable取值为取值为on(缺省值)(缺省值),inactive和和offExtend取值为四元素矢量取值为四元素矢量0,0,width,height,记录控件对象标题字符的位置记录控件对象标题字符的位置和尺寸和尺寸ForegroundColor取值为颜色的预定义字符或取值为颜色的预定义字符或RGB数值数值Max,Min取值都为数值取值都为数值String取值为字符串矩阵或数组,定义控件对象标题或选项内容取值为字符串矩阵或数组,定义控件对象标题或选项内容Style取值可以是取值可以是pushbutton,radiobutton,checkbox,edit,text,slider,frame,popupmenu 或或listboxUnits取值可以是取值可以是pixels,normalized,inches,centimeters或或pointsValue取值可以是矢量,也可以是数值,其含义及解释依赖于控件对象的类型取值可以是矢量,也可以是数值,其含义及解释依赖于控件对象的类型15控件对象的属性(续)(续)u控件对象的修饰控制属性控件对象的修饰控制属性FontAngle取值为取值为normal,italic,oblique,FontName取值为控件标题等字体的字库名取值为控件标题等字体的字库名FontSize取值为数值,取值为数值,FontWeight取值为取值为points,normalized,inches,centimeters或或pixelsHorizontalAligment取值为取值为left,right,定义对齐方式定义对齐方式u控件对象的辅助属性控件对象的辅助属性ListboxTop取值为数量值取值为数量值SliderStop取值为两元素矢量取值为两元素矢量minstep,maxstep,用于用于slider控件控件Selected取值为取值为on 或或offSlectionHoghlight取值为取值为on 或或off16对话框设计示例u建立图形演示对话框。在建立图形演示对话框。在编辑框编辑框输入绘图命令,当单击输入绘图命令,当单击“绘图绘图”按钮按钮时,能在左边坐标轴绘制所对应的图形,时,能在左边坐标轴绘制所对应的图形,弹出框弹出框提供色图控制,提供色图控制,列表框列表框提供坐标网格线和坐标边框控制。提供坐标网格线和坐标边框控制。clf;set(gcf,Unit,normalized,Position,0.2,0.3,0.55,0.36);set(gcf,Menubar,none,Name,图形演示图形演示,NumberTitle,off);axes(Position,0.05,0.15,0.55,0.7);%静态文本静态文本uicontrol(gcf,Style,text,Unit,normalized,.Posi,0.63,0.85,0.2,0.1,String,.输入绘图命令输入绘图命令,Horizontal,center);%编辑框编辑框hedit=uicontrol(gcf,Style,edit,Unit,normalized,.Posi,0.63,0.15,0.2,0.68,.Max,2);%Max取取2,使,使Max-Min1,从而允许多行输入,从而允许多行输入17对话框设计示例(续)(续)%弹出框弹出框hpopup=uicontrol(gcf,Style,popup,Unit,normalized,.Posi,0.85,0.8,0.15,0.15,String,.Spring|Summer|Autumn|Winter,Call,.COMM(hedit,hpopup,hlist);%列表框列表框hlist=uicontrol(gcf,Style,list,Unit,normalized,.Posi,0.85,0.55,0.15,0.25,String,.Grid on|Grid off|Box on|Box off,Call,.COMM(hedit,hpopup,hlist);%绘图按钮绘图按钮hpush1=uicontrol(gcf,Style,push,Unit,normalized,.Posi,0.85,0.35,0.15,0.15,String,.绘绘 图图,Call,COMM(hedit,hpopup,hlist);18对话框设计示例(续)(续)%关闭按钮关闭按钮uicontrol(gcf,Style,push,Unit,normalized,.Posi,0.85,0.15,0.15,0.15,String,.关关 闭闭,Call,close all);uCOMM.m函数文件:函数文件:function COMM(hedit,hpopup,hlist)com=get(hedit,String);n1=get(hpopup,Value);n2=get(hlist,Value);if isempty(com)%编辑框输入非空时编辑框输入非空时eval(com);%执行从编辑框输入的命令执行从编辑框输入的命令 chpop=spring,summer,autumn,winter;chlist=grid on,grid off,box on,box off;colormap(eval(chpopn1);eval(chlistn2);end19主要内容u菜单设计菜单设计 u对话框设计对话框设计 u可视化图形用户界面设计可视化图形用户界面设计 20可视化图形用户界面设计uMATLAB提供了提供了可视化的用户界面开发环境可视化的用户界面开发环境(GUI Development Environment,GUIDE),实现实现“所见即所得所见即所得”uGUIDE可方便的创建可方便的创建GUI应用程序应用程序,它可以根据用户设计的它可以根据用户设计的GUI布局,布局,自动生成自动生成M文件的框架,用户使用这一框架编制自己的应用程序。文件的框架,用户使用这一框架编制自己的应用程序。uGUI设计模板设计模板在在MATLAB主窗口中,选择主窗口中,选择File菜单中的菜单中的New菜单项,再选择其中的菜单项,再选择其中的GUI命令,就会显示图形用户界面的设计模板。命令,就会显示图形用户界面的设计模板。4种模板种模板Blank GUI(默认默认)GUI with Uicontrols(带控件对象的带控件对象的GUI模板模板)GUI with Axes and Menu(带坐标轴与菜单的带坐标轴与菜单的GUI模板模板)Modal Question Dialog(带模式问话对话框的带模式问话对话框的GUI模板模板)当用户选择不同的模板时,在当用户选择不同的模板时,在GUI设计模板界面的右边就会显示出与该设计模板界面的右边就会显示出与该模板对应的模板对应的GUI图形。图形。21GUI设计窗口u在在GUI设计模板中选中一个模板,然后单击设计模板中选中一个模板,然后单击OK按钮,就会显示按钮,就会显示GUI设计窗口。设计窗口。选择不同的选择不同的GUI设计模式时,在设计模式时,在GUI设计窗口中显示的结果是不一样的。设计窗口中显示的结果是不一样的。uGUI设计窗口组成部分设计窗口组成部分菜单栏菜单栏File、Edit、View、Layout、Tools和和Help 6个菜单项,使用其中的命令可以完成图形用个菜单项,使用其中的命令可以完成图形用户界面的设计操作。户界面的设计操作。工具栏工具栏Align Objects(位置调整器位置调整器)、Menu Editor(菜单编辑器菜单编辑器)、Tab Order Editor(Tab顺序编顺序编辑器辑器)、M-file Editor(M文件编辑器文件编辑器)、Property Inspector(属性查看器属性查看器)、Object Browser(对象浏览器对象浏览器)和和Run等等15个命令按钮,通过它们可以方便地调用需要使用的个命令按钮,通过它们可以方便地调用需要使用的GUI设计工具和实现有关操作。设计工具和实现有关操作。控件工具栏控件工具栏Push Button、Slider、Radio Button、Check Box、Edit Text、Static Text、Popup Menu、Listbox、Toggle Button、Axes等控件对象,它们是构成等控件对象,它们是构成GUI的基本元素。的基本元素。图形对象设计区图形对象设计区22GUI设计窗口(续)(续)23GUI设计窗口的基本操作u添加控件添加控件从控件工具栏中选择一个对象,然后以拖拽方式在该对象设计区从控件工具栏中选择一个对象,然后以拖拽方式在该对象设计区建立该对象建立该对象u设置属性设置属性双击该对象,就会显示该对象的属性编辑器。双击该对象,就会显示该对象的属性编辑器。u在选中对象的前提下,单击鼠标右键,会弹出一个快捷菜在选中对象的前提下,单击鼠标右键,会弹出一个快捷菜单,可以从中选择某个子菜单进行相应的操作。在对象设单,可以从中选择某个子菜单进行相应的操作。在对象设计区右击鼠标,会显示与图形窗口有关的快捷菜单。计区右击鼠标,会显示与图形窗口有关的快捷菜单。24图形用户界面设计工具uMATLAB的用户界面设计工具共有的用户界面设计工具共有5个个对象属性查看器对象属性查看器(Property Inspector):可查看每个对象的属性值,:可查看每个对象的属性值,也可修改设置对象的属性值。也可修改设置对象的属性值。菜单编辑器菜单编辑器(Menu Editor):创建、设计、修改下拉式菜单和快捷:创建、设计、修改下拉式菜单和快捷菜单菜单位置调整工具位置调整工具(Alignment Tool):可利用该工具左右、上下对多个:可利用该工具左右、上下对多个对象的位置进行调整。对象的位置进行调整。对象浏览器对象浏览器(Object Browser):可观察当前设计阶段的各个句柄图:可观察当前设计阶段的各个句柄图形对象。形对象。Tab顺序编辑器顺序编辑器(Tab Order Editor):通过该工具,设置当用户按:通过该工具,设置当用户按下键盘上的下键盘上的Tab键时,对象被选中的先后顺序。键时,对象被选中的先后顺序。25对象属性查看器u对象属性查看器对象属性查看器功能:功能:查看每个对象的属性值,也可以修查看每个对象的属性值,也可以修改、设置对象的属性值改、设置对象的属性值打开方式打开方式从从GUI设计窗口工具栏上选择设计窗口工具栏上选择Property Inspector命令按钮,命令按钮,选择选择View菜单下的菜单下的Property Inspector子菜单子菜单在在MATLAB命令窗口的命令行上输命令窗口的命令行上输入入inspect26菜单编辑器u菜单编辑器菜单编辑器功能功能创建、设置、修改下拉式菜单和快创建、设置、修改下拉式菜单和快捷菜单。捷菜单。打开方式打开方式从从GUI设计窗口的工具栏上选择设计窗口的工具栏上选择Menu Editor命令按钮命令按钮选择选择Tools菜单下的菜单下的Menu Editor子子菜单菜单结构结构左上角左上角u第一个按钮用于创建一级菜单项,第二个按钮用于创建一级菜单第一个按钮用于创建一级菜单项,第二个按钮用于创建一级菜单的子菜单;第四个与第五个按钮用于对选中的菜单进行左移与右的子菜单;第四个与第五个按钮用于对选中的菜单进行左移与右移,第六与第七个按钮用于对选中的菜单进行上移与下移,最右移,第六与第七个按钮用于对选中的菜单进行上移与下移,最右边的按钮用于删除选中的菜单。边的按钮用于删除选中的菜单。左下角左下角u第一个按钮创建下拉式菜单。第二个按钮创建第一个按钮创建下拉式菜单。第二个按钮创建Context Menu菜菜单。单。27位置调整工具u位置调整工具位置调整工具功能功能对对GUI对象设计区内的多个对象的位对象设计区内的多个对象的位置进行调整。置进行调整。打开方式打开方式从从GUI设计窗口的工具栏上选择设计窗口的工具栏上选择Align Objects命令按钮命令按钮选择选择Tools菜单下的菜单下的Align Objects菜菜单项单项组成结构组成结构第一栏是垂直方向的位置调整。第一栏是垂直方向的位置调整。第二栏是水平方向的位置调整。第二栏是水平方向的位置调整。28对象浏览器u对象浏览器对象浏览器功能功能查看当前设计阶段的各个查看当前设计阶段的各个句柄图形对象。句柄图形对象。打开方式打开方式从从GUI设计窗口的工具栏设计窗口的工具栏上选择上选择Object Browser命命令按钮令按钮选择选择View菜单下的菜单下的Object Browser子菜单子菜单用鼠标双击图中的任何一用鼠标双击图中的任何一个对象,可以进入对象的个对象,可以进入对象的属性查看器界面。属性查看器界面。29Tab顺序编辑器uTab顺序编辑器顺序编辑器(Tab Order Editor)功能功能设置用户按键盘上的设置用户按键盘上的Tab键时,对象被选中的先后键时,对象被选中的先后顺序。顺序。打开方式打开方式选择选择Tools菜单下的菜单下的Tab Order Editor菜单项菜单项30可视化设计应用实例u例例 利用利用GUI设计工具设计用户界面设计工具设计用户界面该界面包括一个用于显示图形的该界面包括一个用于显示图形的轴对象轴对象,显示的图形包括表面图、,显示的图形包括表面图、网格图或等高线图。网格图或等高线图。绘制图形的功能通过绘制图形的功能通过3个个命令按钮命令按钮来实现,用户通过单击相应的来实现,用户通过单击相应的按钮,即可绘制相应图形。按钮,即可绘制相应图形。绘制图形所需要的数据通过一个绘制图形所需要的数据通过一个弹出框弹出框来选取。在弹出框中包括来选取。在弹出框中包括3个选项,分别对应个选项,分别对应MATLAB的数据函数的数据函数peaks、membrane和用和用户自定义的绘图数据户自定义的绘图数据sinc,用户可以通过选择相应的选项来载入,用户可以通过选择相应的选项来载入相应的绘图数据相应的绘图数据在图形窗口缺省的菜单条上添加一个在图形窗口缺省的菜单条上添加一个菜单项菜单项Select,Select下又有下又有两个子菜单项两个子菜单项Yellow和和Red,选中,选中Yellow项时,图形窗口将变成黄项时,图形窗口将变成黄色,选中色,选中Red项时,图形窗口将变成红色。项时,图形窗口将变成红色。31可视化设计应用实例(续)(续)u 第一步:第一步:打开打开GUI设计窗口,添加有关控件对象设计窗口,添加有关控件对象 在在MATLAB命令窗口输入命令命令窗口输入命令guide,将打开,将打开GUI设计窗口。单击设计窗口。单击GUI设计窗口控件工具栏中的设计窗口控件工具栏中的Axes按钮按钮,并在图形窗口中拖出一个,并在图形窗口中拖出一个矩形框矩形框,调整好大小和位置。再添加调整好大小和位置。再添加3个按钮个按钮、一个、一个静态文本框静态文本框和和一个弹出框一个弹出框,并调整好大小和位置。必要时可利用位置调整工具将图形对象对齐。并调整好大小和位置。必要时可利用位置调整工具将图形对象对齐。u第二步:第二步:利用属性编辑器,设置图形对象的属性。利用属性编辑器,设置图形对象的属性。利用属性编辑器把利用属性编辑器把3个按钮的个按钮的Position属性的第属性的第3和第和第4个分量设为相同的个分量设为相同的值,以使值,以使3个按钮宽和高都相等。个按钮宽和高都相等。3个按钮的个按钮的String属性分别是说明文字属性分别是说明文字Mesh、Surf和和Contour3,FontSize属性设为属性设为10。双击弹出框,打开该对象的属性设置对话框。为了设置弹出框的双击弹出框,打开该对象的属性设置对话框。为了设置弹出框的String属性,单击属性,单击String属性名后面的图标,然后在打开的文本编辑器中输入属性名后面的图标,然后在打开的文本编辑器中输入3个选项:个选项:peaks、membrane、sinc。注意,每行输入一个选项。注意,每行输入一个选项。将静态文本框的将静态文本框的String属性设置为属性设置为Choose Data of Graphics。32可视化设计应用实例(续)(续)u第三步:第三步:编写代码,实现控件功能。编写代码,实现控件功能。如果实现代码较为简单,可以直接修改控件的如果实现代码较为简单,可以直接修改控件的Callback属性。对于较为复杂的程序代码,最属性。对于较为复杂的程序代码,最好还是编写好还是编写M文件。右键单击任一图形对象,在弹出的快捷菜单中选择文件。右键单击任一图形对象,在弹出的快捷菜单中选择View Callbacks,再,再选选Callback子菜单,将自动打开一个子菜单,将自动打开一个M文件,这时可以在各控件的回调函数区输入相应的程文件,这时可以在各控件的回调函数区输入相应的程序代码。本例需要添加的代码如下序代码。本例需要添加的代码如下(注释部分和函数引导行是系统注释部分和函数引导行是系统M文件中已有的文件中已有的):在打开的函数文件中,添加用于创建绘图数据的代码:在打开的函数文件中,添加用于创建绘图数据的代码:function ex8_5_OpeningFcn(hObject,eventdata,handles,varargin)%This function has no output args,see OutputFcn.%hObject handle to figure%eventdata reserved-to be defined in a future version of MATLAB%handles structure with handles and user data(see GUIDATA)%varargin command line arguments to ex8_5(see VARARGIN)handles.peaks=peaks(35);handles.membrane=membrane(5);%membrane函数产生函数产生MATLAB标志标志x,y=meshgrid(-8:0.5:8);r=sqrt(x.2+y.2);sinc=sin(r)./(r+eps);handles.sinc=sinc;handles.current_data=handles.peaks;33可视化设计应用实例(续)(续)u 为弹出式菜单编写响应函数代码如下:为弹出式菜单编写响应函数代码如下:%-Executes on selection change in popupmenu1.function popupmenu1_Callback(hObject,eventdata,handles)%hObject handle to popupmenu1(see GCBO)%eventdata reserved-to be defined in a future version of MATLAB%handles structure with handles and user data(see GUIDATA)val=get(hObject,Value)str=get(hObject,String);switch strval case peaks handles.current_data=handles.peaks;case membrane handles.current_data=handles.membrane;case sinc handles.current_data=handles.sinc;endguidata(hObject,handles)%Hints:contents=get(hObject,String)returns popupmenu1 contents as cell array%contentsget(hObject,Value)returns selected item from popupmenu1 34可视化设计应用实例(续)(续)u为为Mesh按钮编写响应函数代码如下:按钮编写响应函数代码如下:%-Executes on button press in pushbutton1.function pushbutton1_Callback(hObject,eventdata,handles)%hObject handle to pushbutton1(see GCBO)%eventdata reserved-to be defined in a future version of MATLAB%handles structure with handles and user data(see GUIDATA)mesh(handles.current_data)35可视化设计应用实例(续)(续)u为为Surf按钮编写响应函数代码如下:按钮编写响应函数代码如下:%-Executes on button press in pushbutton2.function pushbutton2_Callback(hObject,eventdata,handles)%hObject handle to pushbutton2(see GCBO)%eventdata reserved-to be defined in a future version of MATLAB%handles structure with handles and user data(see GUIDATA)surf(handles.current_data)36可视化设计应用实例u为为Contour3按钮编写响应函数代码如下:按钮编写响应函数代码如下:%-Executes on button press in pushbutton3.function pushbutton3_Callback(hObject,eventdata,handles)%hObject handle to pushbutton3(see GCBO)%eventdata reserved-to be defined in a future version of MATLAB%handles structure with handles and user data(see GUIDATA)contour3(handles.current_data)37可视化设计应用实例(续)(续)u第四步:添加第四步:添加select菜单项菜单项将图形窗口的将图形窗口的menubar属性设为属性设为figure打开菜单编辑器,新建一个菜单项,将打开菜单编辑器,新建一个菜单项,将lable属性设为属性设为select在刚建的在刚建的select菜单下建立子菜单项,菜单下建立子菜单项,lable属性设为属性设为yellow,callback属性设为属性设为set(gcf,color,y)在在select菜单下再建立子菜单项,菜单下再建立子菜单项,lable属性设为属性设为red,callback属属性设为性设为set(gcf,color,r)38可视化设计应用实例(续)(续)u第五步:保存并运行图形用户界面第五步:保存并运行图形用户界面选择选择file菜单中的菜单中的save命令,将设计的图形保存为命令,将设计的图形保存为.fig文件,同文件,同时自动生成时自动生成.m文件(内容为各控件对象的程序代码)文件(内容为各控件对象的程序代码)u第六步:选择第六步:选择run命令运行界面命令运行界面39内容回顾u菜单设计菜单设计 u对话框设计对话框设计 u可视化图形用户界面设计可视化图形用户界面设计 40u目的和要求:目的和要求:理解用户菜单及快捷菜单的建立理解用户菜单及快捷菜单的建立理解控件的建立理解控件的建立熟悉可视化图形用户界面的设计熟悉可视化图形用户界面的设计内容回顾(续)(续)41

    注意事项

    本文(第八章__MATLAB_图形用户界面.ppt)为本站会员(gsy****95)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开