第7章MATLAB图形界面设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

静态文本框(Static Texts):仅用于显示单行的说明文字; ⑥ 静态文本框 滚动条(Slider): 可输入指定范围的数量值; ⑦ 滚动条 : 边框(Frames):在图形窗口圈出一块区域; ⑧ 边框 : ⑨ 列表框 列表框(List Boxes):在其中定义一系列可供选择的字符 : 串; ⑩ 弹出式菜单(Popup Menus): 让用户从一列菜单项中选 弹出式菜单 : 择一项作为参数输入; 此外还有坐标轴(Axes), 用于显示图形和图象。
回调函数 在M文本编辑器中打开m文件,可以看到自动生成的 回调函数,该函数的命名利用对象句柄进行区分, 没有任何执行语句。 回调函数:Tag_Callback(hObject, eventdata, handles), 通过加入自己的处理语句,可以实现所需功能。 其中hObject是控件的句柄;eventdata是备用参数, 目前没有定义;handles是用户数据,本身是一个结 构数组,存放了当前窗口的所有对象的句柄,包括 图形窗本身、所有控件和菜单的句柄。并且可以增 加一些域用来传递用户数据。 利用guidata( H, handles )可以更新 H 的用户数据。
空白界面 有控件的模板界面 有轴对象和菜单的模板界面 标准询问窗口
7.1.2 GUI界面的创建 用户创建 创建新的GUI,也可打开 打开已有的GUI。创建 创建 打开 界面时还可在模板基础上进行,在选择GUI模板 时,启动界面右侧提供了预览。
以“GUI with axes and menu”模板创建的 模板创建的GUI初始界面。 初始界面。 模板创建的 初始界面
菜单设计的编辑窗口
菜单效果图
菜单编辑器(Menu Editor) 菜单编辑器 利用菜单编辑器可创建、设置、修改下拉式菜单和快捷菜单。 选择 Tools 菜单的 Menu Editor...子菜单,可打开菜单编辑器。
菜单可通过编程实 现,从GUI设计窗 口的工打开菜单编辑 程序。
显示控件名称 的设置界面 对界面左侧的控 件如果不够熟悉 的话,可以通过 File>Preference s选项,选中 “Show names in component palette”
GUI设计界面在显示控制图标的同时,还显示控件名称
1. “Hello World”程序界面设计 2. “Hello World”程序的设计 3. 程序测试运行
界面激活 保存静态界面后,利用工具栏上的运行按钮激活该 界面。激活后可以看到两个同名文件:m和fig。 m文件在M文本编辑器中打开, fig文件显示为操作 界面,但是无法实现任何功能,需要编写回调函数。 精细调整 利用对齐工具,排列控件的位置,使控件的大小、 位置更加协调。
精细调整 利用对齐工具,排列控件的位置,使控件的大小、位 置更加协调。
7.2 GUI程序设计示例 程序设计示例
本节通过示例,演示 程序设计。 本节通过示例,演示MATLAB的GUI程序设计。 的 程序设计
“Hello World”程序的设计
下面以一个类似于学习其它程序设计的第一个程 序“Hello World”为例,讲解GUIDE的有关知识。 程序的目标是当按下按钮时,由文本控件显示 “Hello World”。 Hello World”
按钮(Push Buttons):执行某种预定的功能或操作; ① 按钮 : 开关按钮(Toggle Button):产生一个动作并指示一个二 ② 开关按钮 : 进制状态(开或关),当鼠点击它时按钮将下陷,并执 行callback(回调函数)中指定的内容,再次点击,按钮 复原,并再次执行callback 中的内容; 单选框(Radio Button):单个的单选框用来在两种状态之 ③ 单选框 : 间切换,多个单选框组成一个单选框组时,用户只能在 一组状态中选择单一的状态,或称为单选项; 复选框(Check Boxes):单个的复选框用来在两种状态之 ④ 复选框 : 间切换,多个复选框组成一个复选框组时,可使用户在 一组状态中作组合式的选择,或称为多选项; 文本编辑器(Editable Texts):用来使用键盘输入字符串 ⑤ 文本编辑器 : 的值,可以对编辑框中的内容进行编辑、删除和替换等 操作;
7.1.1 GUIDE的启动 的启动 可以如下不同方式启动GUIDE: : 可以如下不同方式启动 1. 在命令窗口提示符下输入 在命令窗口提示符下输入guide; ; 2. 在工具栏选打开; 在工具栏选打开; 3. 在Start菜单中选 菜单中选MATLAB > ; 菜单中选 4. MATLAB File 菜单中选 菜单中选New > GUI。 。
GUI设计中的界面设计部分比较容易。在窗口上添加 一个按钮控件(Push Button)和一个文本控件(Static Text)。可双击控件调出属性编辑器进行其属性设置。
设按钮控件的“String”属 性为“问候”,“Tag”属 性为“helloBt”,见右图
按钮属性设置
设置文本控件的“String” 属性为空,表示初始状态下 不显示任何信息,“Tag”属 性为“helloStr”,为显示 清楚,设其“FontSize”属 性为“28”。见右图
菜单编辑器包括菜单的设计和编辑,菜单编辑器有八个 快捷键,可以利用它们任意添加或删除菜单,可以设置菜单 项的属性,包括名称(Label)、标识(Tag)、选择是否显示分 、 、 隔线(Separator above this item)、是否在菜单前加上选中标 、 记(Item is checked)、调用函数(Callback)。 、 。
文本控件属性设置
“Tag”属性设置要唯一,因为“Tag”属性是唯一标 识控件的。 至此,我们的界面设计工作完成。 保存时,会生成2个文件,helloworld.fig, helloworld.m。
此外可通过Tools>Menu Editor进行类似于Windows程 序的菜单设计。编辑窗口见左图,效果见右图。
菜单编辑器左上角的第一个按钮用于创建一级菜单项。 第二个按钮用于创建一级菜单的子菜单。
菜单编辑器左下角有两个按钮,选择第一个按钮可创建下 拉式菜单。选择第二个按钮可创建Context Menu菜单。选择 它后,菜单编辑器左上角的第三个按钮就会变成可用,单 击它就可以创建Context Menu主菜单。在选中已经创建的 Context Menu主菜单后,可以单击第二个按钮创建选中的 Context Menu主菜单的子菜单。与下拉式菜单一样,选中创 建的某个Context Menu菜单,菜单编辑器的右边就会显示该 菜单的有关属性,可以设置、修改菜单属性。
GUIDE工具栏上的工具按钮
布局编辑器(Layout Edtor)——在图形窗口中创建及布置 布局编辑器 图形对象。布局编辑器是可以启动用户界面的控制面板,上 述工具都必须从布局编辑器中访问,用guide命令可以启动, 用 命令可以启动, 命令可以启动 或在启动平台窗口中选择GUIDE来启动布局编辑器; 来启动布局编辑器; 或在启动平台窗口中选择 来启动布局编辑器 几何排列工具(Alignment Tool)——调整各对象相互之间 几何排列工具 的几何关系和位置; 属性查看器(Property Inspector)——查询并设置属性值; 属性查看器 对象浏览器(Object Browser)——用于获得当前Matlab图 对象浏览器 形用户界面程序中的全部对象信息,对象的类型,同时显示 控件的名称和标识,在控件上双击鼠标可以打开该控件的属 性编辑器; 菜单编辑器(Menu Editor)——创建、设计、修改下拉式 菜单编辑器 菜单和快捷菜单; Tab顺序编辑器(Tab Order Editor)——用于设置当用 顺序编辑器( 顺序编辑器 ) 户按下键盘上的Tab键时,对象被选中的先后顺序。
菜单编辑器左上角的第四个与第五个按钮用于对选中 的菜单进行左移与右移,第六与第七个按钮用于对选中的 菜单进行上移与下移,最右边的按钮用于删除选中的菜单。
第7章 MATLAB 图形界面设计 章
MATLAB的GUI程序设计可以用两种方式实现, 的 程序设计可以用两种方式实现, 程序设计可以用两种方式实现 一种是借助GUI开发工具 开发工具GUIDE, 一种是利用 一种是借助 开发工具 , 一种是利用m 文件代码构建界面。采用GUIDE进行设计的方法 文件代码构建界面。采用 进行设计的方法 直观方便,容易上手。 直观方便,容易上手。 本章主要介绍利用GUIDE方法进行设计的步骤。 方法进行设计的步骤。 本章主要介绍利用 方法进行设计的步骤
变。 可以是left, center, 水平对齐方式 Horizontal Alignment可以是 2) 静态文本编辑框的属性设置。 可以是 right。 。 FontSize: 15 %字体大小 控件句柄Tag有默认值 有默认值, 控件句柄 FontUnits: points有默认值,建议修改为带有具体含义的字 %字体大小的度量单位 符串,以增加程序可读性和方便回调函数调用。 符串,以增加程序可读性和方便回调函数调用。
HorizontalAlignment: Center %对齐方式 String: Expression %待显示的字符 Tag: text1 %静态文本框句柄handles.text1 Units: points %文本框度量单位
3) 可编辑文本框的属性设置。 String: 0 %初始状态下显示数字0 Tag: pExp %可编辑文本框的句柄 其它和静态文本框相同 4) 单功能按钮属性设置。以按钮“1” 为例 String: 1 Tag: p1 其它和静态文本框相同。
用户控件 对象选择按钮,用来选取工作区的控件。 单功能按键,按下操作代表一定功能实现。 双位按键,代表“开”“关”两种状态。 互斥选择按钮,多个选项互斥选择时使用。 互容选择按钮,同时选中多个选项时使用。 编辑文本框,可以自由输入字符和字符串 静态文本框,用于显示注释,不可编辑。 滑动块,利用游标滑动,可以获取不同值。 控件区域框,用于对控件区域进行标识。 列表框,提供多个互容的可供选择选项。 弹出框,有多个选项,只能选择其中一项。 轴对象,用来显示图形。
修改控件属性 每个控件不可能是完全符合界面设计要求的,需要 对其属性进行设置,以获得所需界面显示效果。 可以通过双击该控 件,或利用下拉菜 单[View: Property [View: Inspector]打开控件 属性对话框。
例如右图是“+”按 钮的属性列表。
下面对各控件的主要属性进行一下说明。 1) 双击设计工作区空白部分,打开整个图形窗属性 框。 MunuBar: 或FontUnits可选择:inches(英寸 ,centimeters none %图形窗是否使用标准菜单 Units或 可选择: 英寸), 可选择 英寸 Name: , normalized(按比例缩放 ,points(点阵 , pixels (厘米 caculator %图形窗名称 厘米), 按比例缩放), 点阵), 厘米 按比例缩放 点阵 Resize:, characters(字符 。如果选择 %图形窗不能缩放 (像素 off 像素), 字符)。 像素 字符 如果选择normalized,那么当 , resize设为 时 设为on时 设为 Tag: mainWnd ,控件或字体大小随着整个窗口的缩放而改 %图形窗的句柄handles.mainWnd
7.1 GUI设计工具 设计工具Guide简介 设计工具 简介
MATLAB提供了用户图形界面开发程序 提供了用户图形界面开发程序GUIDE,支 提供了用户图形界面开发程序 , 持可视化编辑。 持可视化编辑。 它是一种基于事件或者说是事件驱动的程序(event 它是一种基于事件或者说是事件驱动的程序( driven),类似于方便易用的 ),类似于方便易用的 ),类似于方便易用的Visual Basic。 。
相关文档
最新文档