matlab仿真技术及应用第七章 图形用户界面gui课件

上传人:Bod****ee 文档编号:55611201 上传时间:2018-10-03 格式:PPT 页数:68 大小:1.21MB
返回 下载 相关 举报
matlab仿真技术及应用第七章 图形用户界面gui课件_第1页
第1页 / 共68页
matlab仿真技术及应用第七章 图形用户界面gui课件_第2页
第2页 / 共68页
matlab仿真技术及应用第七章 图形用户界面gui课件_第3页
第3页 / 共68页
matlab仿真技术及应用第七章 图形用户界面gui课件_第4页
第4页 / 共68页
matlab仿真技术及应用第七章 图形用户界面gui课件_第5页
第5页 / 共68页
点击查看更多>>
资源描述

《matlab仿真技术及应用第七章 图形用户界面gui课件》由会员分享,可在线阅读,更多相关《matlab仿真技术及应用第七章 图形用户界面gui课件(68页珍藏版)》请在金锄头文库上搜索。

1、MATLAB仿真技术及应用,第七章 图形用户界面GUI,主要内容,7.1 概述 7.2 图形句柄入门 7.3 GUIDE工具入门 7.4 创建图形用户界面外观 7.5 图形用户界面编程,重点,掌握简单的图形用户界面设计方法,7.1 概 述,在MATLAB中创建图形用户界面的方法有两种图形句柄 GUIDE都需要使用M语言编程。利用图形句柄创建的GUI只有一个M文件,而利用GUIDE创建的GUI由两个文件: M文件和外观文件fig文件。MATLAB提供了基本的用户界面元素,包括菜单、快捷菜单、按钮、复选框、单选框、文本编辑框、静态文本、下拉列表框、列表框等。需要注意的是,MATLAB的图形用户界面

2、程序大多数是对话框应用程序。,7.2 图形句柄入门,在 MATLAB 环境中每一个图形对象都有一个相应的句柄,,表7-1 常用的图形句柄操作函数,例子7-1 使用图形句柄。 在MATLAB命令行窗口中,键入下面的指令: X = linspace(-pi,pi,25); Y = sin(X); plot(X,Y,rX); 这时的图形结果为红色的以“X”为符号的正弦曲线,如图7-5所示。,图7-5 绘制的原始图形,获取当前的曲线对象句柄: h_line = findobj(gca,Marker,X) h_line =3.0011 获取整个曲线的属性列表: get(h_line)Color = 1

3、0 0EraseMode = normal,LineStyle = noneLineWidth = 0.5Marker = xMarkerSize = 6MarkerEdgeColor = autoMarkerFaceColor = noneXData = (1 by 25) double arrayYData = (1 by 25) double arrayZData = BeingDeleted = offButtonDownFcn = Children = ,Clipping = onCreateFcn = DeleteFcn = BusyAction = queueHandleVisi

4、bility = onHitTest = onInterruptible = onParent = 101.001Selected = offSelectionHighlight = onTag = Type = lineUIContextMenu = UserData = Visible = on,设置曲线的属性: set(h_line,Color,1 1 1,MarkerSize,10); 将曲线设置为白色,符号的大小设置为10 设置坐标轴的属性: set(gca,Color,0,0,0)坐标轴的背景色成为黑色。, set(gca,XGrid,on,GridLineStyle,-.,XCo

5、lor,0.75 0.75 0) set(gca,YGrid,on,GridLineStyle,-.,YColor,0 0.75 0.75)将坐标轴的网格线绘制了出来,使用了点划线,分别设置了不同的颜色。 set(gcf,Color,0 0 1)将整个图形窗体的背景色设置为蓝色,效果如图7-6所示。,图7-6 设置不同图形对象属性得到的结果,若需要修改MATLAB的默认属性,则使用下面的命令行:set(ancestor,Default,)其中,ancestor为某一层次的图形对象句柄。若在根层次设置了默认属性,则所有的对象都继承这个默认属性。若在轴层次设置默认属性,则轴层次以下的对象继承该默认

6、属性。,例子7-2 设置修改对象的默认属性。 本例子使用的脚本文件内容如下: 001 % 修改图形窗体默认背景色 002 set(0,DefaultFigureColor,1 1 1); 003 % 修改默认的坐标轴背景色 004 set(0,DefaultAxesColor,0 0 0); 005 % 修改坐标线的色彩 006 set(0,DefaultAxesXColor,0.5 0 0); 007 set(0,DefaultAxesYColor,0.5 0 0);,修改MATLAB的默认属性,008 % 修改文本的色彩 009 set(0,DefaultTextColor,0 0.5 0

7、); 010 X = linspace(-pi,pi,25); 011 Y = sin(X); 012 plot(X,Y,yX); 013 grid on 014 title(Change The Default Properties); 015 legend(sin);运行结果如图7-7所示。,图7-7 修改默认属性值后的显示效果,如果希望将已经修改的默认属性值恢复成出厂设置,则可以使用下面的命令行: set(h, PropertyName, default) 或者 set(h, PropertyName, factory) set(h, PropertyName, remove),采用图形

8、句柄设计图形用户界面,例7-3:制作一个能绘制二阶系统的单位阶跃响应曲线的图形用户界面。二阶系统的传递函数为 。,H=axes(unit,normalized,position,0,0,1,1,visible,off); set(gcf,currentaxes,H); str=fontname隶书归一化二阶系统的阶跃响应曲线; text(0.12,0.93,str,fontsize,13); h_fig=get(H,parent); set(h_fig,unit,normalized,position,0.1,0.2,0.7,0.4); h_axes=axes(parent,h_fig,.un

9、it,normalized,position,0.1,0.15,0.55,0.7,.xlim,0 15,ylim,0 1.8,fontsize,8);,h_text=uicontrol(h_fig,style,text,.unit,normalized,position,0.67,0.73,0.25,0.14,.horizontal,left,string,输入阻尼比系数,zeta =); h_edit=uicontrol(h_fig,style,edit,.unit,normalized,position,0.67,0.59,0.25,0.14,.horizontal,left,.callb

10、ack,.z=str2num(get(gcbo,string);,.t=0:0.1:15;,.for k=1:length(z);,.y(:,k)=step(1,1 2*z(k) 1,t);,.plot(t,y(:,k);,.if (length(z)1) ,hold on,end,.end;,hold off,);,h_push1=uicontrol(h_fig,style,push,.unit,normalized,position,0.67,0.37,0.12,0.15,.string,grid on,callback,grid on); h_push2=uicontrol(h_fig,

11、style,push,. unit,normalized,position,0.67,0.15,0.12,0.15,.string,grid off,callback,grid off);说明:step函数:画阶跃响应曲线 y=step(num,den,t):其中num和den分别为系统传递函数描述中的分子和分母多项式系数,t为选定的仿真时间向量,可由t=0:step:end产生。函数返回值是系统在仿真时刻各个输出所组成的矩阵。,归一化二阶传递函数:,7.3 GUIDE工具入门,使用图形句柄创建GUI的过程繁琐,而且在程序编写好之前,用户图形界面是不可见的。所以为了便于创建图形用户界面,MAT

12、LAB提供了一个开发环境,能够帮助用户创建图形用户界面,这就是GUIDEGraphic User Interface Development Environment。在MATLAB中启动GUIDE的方法:guide 或者通过“Start”菜单选择“MATLAB”下的“GUIDE”命令。,这时,将直接启动GUIDE Quick Start窗体,在这个窗体中,可以初步选择图形用户界面的类型,如图7-8所示。,图7-8 GUIDE的快速启动界面,在快速启动界面中,可以选择四种类型的新建界面: * 空白界面(Black GUI)。 * 具有图形控件的界面(GUI With Uicontrols)。 *

13、 具有菜单和坐标轴的界面(GUI With Axes and Menu)。 * 模式对话框(Modal Question Dialog)。,以空白界面类型为例,单击“OK”按钮,这时MATLAB将启动GUIDE的图形界面,如图7-9所示。,图7-9 具有空白界面的GUIDE图形界面,在GUIDE界面的左侧为MATLAB的控件面板,控件面板包含了能够在画布上绘制的图形控件: (Push Button)、单选按钮(Toggle Button)、 单选框(Radio Button)、复选框(Checkbox)、 文本框(Edit Text)、静态文本框(Static Text)、滚动条(Slider

14、)、组别框(Frame)、 列表框(Listbox)、下拉框(Popup Menu) 和坐标轴(Axes)。,图7-12 GUIDE工具栏上的工具按钮,此外,在GUIDE的界面的工具栏上包含了一些常用的工具。,7.4 创建图形用户界面外观,举例:用GUIDE创建图形用户界面。界面中包含一个坐标轴用来显示三维表面(surface);而且界面中包含两个按钮,用来绘制三维表面和修改颜色;通过几个文本框将颜色数值显示出来;通过滚动条修改三维表面的网格线色彩。在图形界面上有一个菜单,通过菜单命令可以清除当前坐标轴的内容。,图7-13 图形用户界面的例子,利用GUIDE工具创建图形用户界面,在该图形用户界

15、面中包含如下控件:* 两个按钮(push button),分别完成绘制三维曲面和改变色彩的功能;* 五个静态文本框(static text),分别用来完成显示不同信息的功能;* 一个滚动条(slide),用来完成改变三维曲面上的分隔线色彩;* 一个坐标轴(axes),用来显示三维曲面;* 一个菜单(menu),用来完成清除坐标轴的功能。下面将详细介绍创建该图形用户界面的方法和步骤。,首先,进行界面设计。在这一过程中,需要对界面空间的布局、控件的大小等进行设计。然后,利用GUIDE的外观编辑功能,将必要的控件依次绘制在界面的“画布”上。在这一过程中,主要将所有控件摆放在合适的位置,并且设置控件合适的大小。第三步,设置控件的属性,这一步骤重点需要设置控件重要的属性值,例如控件的回调函数、标签和显示的文本等。 第四步,针对不同的控件需要完成的功能进行M语言编程。,选择“Tools”菜单下的“Grid and Rulers”命令,在弹出的对话框中可以设置画布上网格线的尺寸,画布上的网格线可以帮助用户来设置控件的尺寸以及确定对齐控件的位置,所以需要选择合适的网格尺寸,默认的数值为50像素。,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号