MATLAB_GUI程序设计.ppt
《MATLAB_GUI程序设计.ppt》由会员分享,可在线阅读,更多相关《MATLAB_GUI程序设计.ppt(44页珍藏版)》请在三一办公上搜索。
1、MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,MATLAB与控制系统仿真实践,第6章MATLAB GUI程序设计初步,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,引言,MATLAB的GUI程序设计可以用两种方式实现,一种是借助GUI开发工具GUIDE,一种是利用m文件代码构建界面。采用GUIDE进行设计的方法所见即所得,直观方便,很容易上手。本章主要介绍利用GUIDE方法进行设计的步骤。有兴趣的用户可以进一步了解学习全部利用m文件代码构建界面及执行程序的方法。,MATLAB与控制系统仿真实践,北京航空航天
2、大学出版社,2009.8.在线交流,有问必答,本章主要内容,6.1 GUI设计工具Guide简介6.1.1 GUIDE的启动6.1.2 GUI界面的创建6.2 GUI程序设计示例6.2.1“Hello World”程序的设计6.2.2 一个实用的GUI设计示例控制系统典型环节的演示程序,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,6.1 GUI设计工具Guide简介,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,MATLAB提供了用户图形界面开发程序GUIDE,支持可视化编辑。它是一种基于事件或者说是事件
3、驱动的程序(event driven),类似于方便易用的Visual Basic。,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,6.1.1 GUIDE的启动,可以如下不同方式启动GUIDE:1.在命令窗口提示符下输入guide;2.在工具栏选打开;3.在Start菜单中选MATLAB GUIDE(GUI Builder);4.MATLAB File 菜单中选New GUI。,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,6.1.1 GUIDE的启动,以上面任一种方式打开GUIDE后,即下图的启动界面。,G
4、UIDE启动界面,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,6.1.2 GUI界面的创建,用户创建新的GUI,也可打开已有的GUI。创建界面时还可在模板基础上进行,在选择GUI模板时,启动界面右侧提供了预览。,以“GUI with axes and menu”模板创建的GUI初始界面。,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,6.2 GUI程序设计示例,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,概述,本节通过2个示例,演示MATLAB的GUI程序设计
5、。一个是“Hello World”程序,作为初步了解。一个用来演示控制系统传递函数典型环节的响应曲线,具有一定实用性。,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,6.2.1“Hello World”程序的设计,下面以一个类似于学习其它程序设计的第一个程序“Hello World”为例,讲解GUIDE的有关知识。程序的目标是当按下按钮时,由文本控件显示“Hello World”。,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,显示控件名称的设置界面,对界面左侧的控件如果不够熟悉的话,可以通过FilePre
6、ferences选项,选中“Show names in component palette”,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,GUI设计界面在显示控制图标的同时,还显示控件名称,GUI设计界面,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,6.2.1“Hello World”程序的设计,1.“Hello World”程序界面设计2.“Hello World”程序的设计3.程序测试运行,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,6.2.1“Hell
7、o World”程序的设计1.“Hello World”程序界面设计,GUI设计中的界面设计部分比较容易。在窗口上添加一个按钮控件(Push Button)和一个文本控件(Static Text)。可以双击控件调出属性编辑器进行其属性的设置。,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,本例中,设按钮控件的“String”属性为“问候”,“Tag”属性为“helloBt”,见右图,按钮属性设置,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,设置文本控件的“String”属性为空,表示初始状态下不显示任何信
8、息,“Tag”属性为“helloStr”,为显示清楚,设其“FontSize”属性为“28”。见右图,文本控件属性设置,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,6.2.1“Hello World”程序的设计1.“Hello World”程序界面设计,需要注意的是,“Tag”属性设置要唯一,因为“Tag”属性是唯一标识控件的。至此,我们的界面设计工作完成。在保存时,会生成2个文件,一个是helloworld.fig,一个是helloworld.m。,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,6.2.
9、1“Hello World”程序的设计1.“Hello World”程序界面设计,此外可通过ToolsMenu Editor进行类似于Windows程序的菜单设计。编辑窗口见左图,效果见右图。,菜单设计的编辑窗口,菜单效果图,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,6.2.1“Hello World”程序的设计2.“Hello World”程序的设计,按照要求,我们可以给按钮添加动作,即给它编写一个回调函数(Callback)。右键单击按钮,选择View CallbacksCallback自动打开helloworld.m文件并指向该回调函数。根
10、据需要为其添加语句。程序将句柄集handles的helloStr(即文本控件)“String”属性设置为“Hello World”,即完成了设计要求。,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,6.2.1“Hello World”程序的设计2.“Hello World”程序的设计,下面这段程序的意思是当点击按钮时,即由程序设置文本控件的“String”属性值为“Hello World”。function helloBt_Callback(hObject,eventdata,handles)set(handles.helloStr,String,H
11、ello World!);,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,6.2.1“Hello World”程序的设计2.“Hello World”程序的设计,注意回调函数的概念,它指的是在对象的某一个事件发生时,MATLAB内部机制允许自动调用的函数。其几个参数的意思分别为 hObject表示当前窗口的句柄;eventdata表示事件代码,为保留 handles是该窗口中的所有句柄的集合。回调函数有的是针对窗口而言的,有的是对具体控件而言的,学会回调函数的编写有助于高效编写MATLAB GUI程序,MATLAB与控制系统仿真实践,北京航空航天大学
12、出版社,2009.8.在线交流,有问必答,6.2.1“Hello World”程序的设计3.程序测试运行,在程序编辑窗口运行测试,或在命令窗口键入程序名称“helloworld”,即可运行。如下图:,helloworld程序运行界面,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,6.2.1“Hello World”程序的设计3.程序测试运行,注意:当不小心将helloworld.fig关掉后,再次编辑需要重新打开。其方法可以通过FileNewGUIOpen Existing GUI来打开。如按照一般理解选择FileOpen项的话,只能打开其运行窗口而
13、不可编辑。,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,6.2.2 一个实用的GUI设计示例控制系统典型环节的演示程序,1.程序功能描述2.程序界面设计3.程序代码设计4.程序测试运行,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答,6.2.2 一个实用的GUI设计示例控制系统典型环节的演示程序,1.程序功能描述进行控制系统典型环节的演示,包括了典型环节运行效果的演示与代码的展示。也可以在代码区输入绘制曲线语句并通过点击定制曲线按钮绘制曲线。,MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB_GUI 程序设计
链接地址:https://www.31ppt.com/p-5438899.html