matlab 第7章 图形用户界面设计-王文杰
第7章MATLAB图形界面设计

静态文本框(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...子菜单,可打开菜单编辑器。
第7章 MATLAB图形界面设计

菜单编辑器左上角的第一个按钮用于创建一级菜单项。 第二个按钮用于创建一级菜单的子菜单。
菜单编辑器左下角有两个按钮,选择第一个按钮可创建下 拉式菜单。选择第二个按钮可创建Context Menu菜单。选择 它后,菜单编辑器左上角的第三个按钮就会变成可用,单 击它就可以创建Context Menu主菜单。在选中已经创建的 Context Menu主菜单后,可以单击第二个按钮创建选中的 Context Menu主菜单的子菜单。与下拉式菜单一样,选中创 建的某个Context Menu菜单,菜单编辑器的右边就会显示该 菜单的有关属性,可以设置、修改菜单属性。
HorizontalAlignment: Center %对齐方式 String: Expression %待显示的字符 Tag: text1 %静态文本框句柄handles.text1 Units: points %文本框度量单位
3) 可编辑文本框的属性设置。 String: 0 %初始状态下显示数字0 Tag: pExp %可编辑文本框的句柄 其它和静态文本框相同 4) 单功能按钮属性设置。以按钮“1” 为例 String: 1 Tag: p1 其它和静态文本框相同。
7.1.1 GUIDE的启动
可以如下不同方式启动GUIDE: 1. 在命令窗口提示符下输入guide; 2. 在工具栏选打开; 3. 在Start菜单中选MATLAB > ; 4. MATLAB File 菜单中选New > GUI。
空白界面 有控件的模板界面 有轴对象和菜单的模板界面 标准询问窗口
修改控件属性
每个控件不可能是完全符合界面设计要求的,需要 对其属性进行设置,以获得所需界面显示效果。 可以通过双击该控 件,或利用下拉菜 单[View: Property Inspector]打开控件 属性对话框。
matlab第7章图形用户界面设计PPT教学课件

2020/12/11
南京信息工程大学信息与控制学院
13
第7章 图形用户界面设计
§7.1 图形用户界面开发环境
7.1.3 用属性编辑器设置控件属性
1、打开属性编辑器 (1)用工具栏上的图标 (2)从View菜单中选择Property
Inspector 菜单项 (3)鼠标右键弹出菜单选择Property
控件对象的属性包括公共属性、基本控制属 性、修饰控制属性、辅助属性和Callback管 理属性几类
2020/12/11
南京信息工程大学信息与控制学院
19
第7章 图形用户界面设计
§7.3 对话框设计
7.3.1 公共对话框 1、文件打开对话框 2、文件保存对话框 3、颜色设置对话框 4、字体设置对话框 5、打印设置对话框 6、打印预览对话框
1、创建控件对象 一般步骤
2020/12/11
南京信息工程大学信息与控制学院
8
第7章 图形用户界面设计
§7.1 图形用户界面开发环境
7.1.1 布局编辑器
2、激活图形用户界面
2020/12/11
南京信息工程大学信息与控制学院
9
第7章 图形用户界面设计
§7.1 图形用户界面开发环境
7.1.1 布局编辑器
2020/12/11
南京信息工程大学信息与控制学院
3
第7章 图形用户界面设计
§7.1 图形用户界面开发环境
Layout Editor:在图形窗口中创建及布置图形对象 Alignment Tool:调整各对象之间的相互几何关系
和位置 Property Inspector:查询并设置对象的属性值 Object Browser:获得当前MATLAB窗口中图像对
第七讲MATLAB图形用户界面(GUI)设计

第七讲MATLAB图形⽤户界⾯(GUI)设计第7讲MATLAB图形⽤户界⾯(GUI)设计图形⽤户界⾯(GUI, Graphical User Interface)是由图形控件构建的⽤于⼈与计算机交互信息的界⾯。
在图形⽤户界⾯上,⽤户可以根据界⾯上的提⽰信息完成⾃⼰的⼯作,⽽不需要记忆⼤量繁琐的命令,只需通过⿏标、键盘等便捷的⽅式与计算机交互信息、选择想要运⾏的程序、控制程序的运⾏、实时显⽰图形信息。
MATLAB创建的图形⽤户界⾯对象有三类:⽤户界⾯控件,如按钮、列表框、编辑框等;下拉菜单,如菜单、⼦菜单;内容菜单,如弹出式菜单。
⼀、命令⾏建⽴⽤户界⾯的⽅法1、创建控件命令:uicontrol调⽤格式:1)uicontrol(‘PropertyName1’,value1, ‘PropertyName2’,value2,……)功能:在当前图形⽤户的界⾯上,应⽤当前制定的属性值创建控件;2)h=uicontrol(‘PropertyName1’,value1, ‘PropertyName2’,value2,……)功能:在当前图形⽤户的界⾯上,应⽤当前制定的属性值创建控件,并返回控件的句柄;3)uicontrol(FIG, ‘PropertyName1’,value1, ‘PropertyName2’,value2,……)功能:在句柄FIG指定的图形⽤户界⾯上,创建控件;4)h=uicontrol(FIG, ‘PropertyName1’,value1, ‘PropertyName2’,value2,……) 功能:在句柄FIG指定的图形⽤户界⾯上,创建控件,并返回控件的句柄。
说明:函数中的PropertyName参数的参数值有:Push buttons(命令按钮)、sliders (滚动条控件)、Radio button(单选按钮)、Check box(复选框)、Edit text (可编程⽂本框)、Static text(静态⽂本框)、Pop_up menus(弹出式菜单)、listbox(列表框)、Toggle button(开关按钮)、Axes(坐标轴)、Panel(⾯板控件)、Button group(按钮组框)、ActiveX control(ActiveX 控件)。
实验六 MATLAB图形用户界面设计

实验六MATLAB图形用户界面设计(3学时)1 实验的目的及意义:(1)熟悉MATLAB图形用户界面开发环境。
(2)掌握MATLAB中图形用户界面程序设计方法。
2 实验步骤:上机调试①设计如下图所示的简单四则运算计算器。
1) 在GUI设计窗口中放置16个Pushbutton控件,将其Tag和String属性分别设置为:Pushbutton1,1Pushbutton2,2……Pushbutton9,9Pushbutton10,0Pushbutton_CLR,CLRPushbutton_EQU,=Pushbutton_ADD,+Pushbutton_SUB,-Pushbutton_MUL,×Pushbutton_DIV,÷2) 在GUI设计窗口中放置2个Statictext控件,将其Tag和String属性分别设置为:Text1,计算器Text_ANS,0再将Text_ANS控件的Backgroundcolor属性设置为白色;HorizontalAlignment属性设置为Left(水平左对齐)。
3) 设计Callback函数:(提示)某一数字按键按下时,要将该按键的String属性读出来并连接到Text_ANS的String属性之后。
(使用字符串连接函数Strcat)function pushbutton1_Callback(hObject, eventdata, handles) str=get(handles.pushbutton1,'string');str=strcat(get(handles.text_ANS,'string'),str);set(handles.text_ANS,'string',str);function pushbutton2_Callback(hObject, eventdata, handles) str=get(handles.pushbutton2,'string');str=strcat(get(handles.text_ANS,'string'),str);set(handles.text_ANS,'string',str);....function pushbutton9_Callback(hObject, eventdata, handles) str=get(handles.pushbutton9,'string');str=strcat(get(handles.text_ANS,'string'),str);set(handles.text_ANS,'string',str);function pushbutton10_Callback(hObject, eventdata, handles) str=get(handles.pushbutton10,'string');str=strcat(get(handles.text_ANS,'string'),str);set(handles.text_ANS,'string',str);CLR按键按下时,将Text_ANS的String属性设为空。
MATLAB的图形用户界面设计

UserData属性的取值是一个矩阵,缺省值为空矩阵,用户可以在 这个属性中保存与该菜单对象相关的重要数据或信息,借此可以达 到传递数据或信息的目的。可以用set和get函数访问该属性。
二、菜单设计
【例2】 建立一个菜单系统。
菜单条中含有File和Help两个菜单项。如果选择File中的New 选项,则将显示New Item字样,如果选择File中的Open选项, 则将显示出Open Item字样。File中的Save菜单项初始时处于禁 选状态,在选择Help选项之后将此菜单项恢复成可选状态,如 果选择File中的Save选项,则将出现一个新的菜单(三级菜单), 其中共有两个子菜单项Text file和Graphics file,如果选择第1项, 则将变量k1和k2分别赋为0和1,然后调用file01.m文件来进行 相应的处理(该文件需要另行编写),如果选择第2项,则将变 量k1和k2分别赋为1和0,然后调用file10.m文件来进行相应的 处理(该文件也需要另行编写)。如果选择File中的Save As选项, 则将显示Save As Item字样。如果选择File中的Exit选项,则将 关闭当前窗口。如果选择Help中About …选项,则将显示Help Item字样,并将Save•菜单设置成可选状态。
第八讲 MATLAB图形用 户界面设计
所谓图形用户界面是指由窗口、菜单、对 话框等各种图形对象组成的用户界面。在 这种用户界面下,用户的操作是通过“选 择”各种图形对象来实现的。
一、图形窗口的控制
一、图形窗口的控制
1.建立图形窗口 要建立一个图形窗口,有两种方法:
(1)菜单操作:在MATLAB命令窗口选择File菜单中 的New命令,再选取Figure子菜单,这样将建立一个标准 的MATLAB图形窗口;
MaabGUI图形用户界面设计
左图为空白 GUI模板情形
GUI设计 窗口的菜单栏 有File、Edit、 View、Layout、 Tools和Help 6 个菜单项,使用 其中的命令可 以完成图形用 户界面的设计 操作.
编辑工具在菜单栏的下方,提供了常用的工具;设计工 具区位于窗口的左半部分,提供了设计GUI过程中所用的用 户控件;空间模板区是网格形式的用户设计GUI的空白区域.
菜单编辑器包括菜单的设计和编辑,菜单编辑器有八个 快捷键,可以利用它们任意填写或删除菜单,可以设置菜单项 的属性,包括名称(Label)、标识(Tag)、选择是否显示分隔线 (Separator above this item)、是否在菜单前加上选中标记 (Item is checked)、调用函数(Callback).
菜单编辑器(Menu Editor)——创建、设计、修改下拉式 菜单和快捷菜单;
Tab顺序编辑器(Tab Order Editor)——用于设置当用 户按下键盘上的Tab键时,对象被选中的先后顺序.
在Matlab 5中, GUI的设计是以 M文件的编程形式实现 的,GUI的布局代码存储在M文件和MAT文件中,而在Matlab 6中有了很大的改变, Matlab 6将GUI的布局代码存储在 FIG 文件中,同时还产生一个M文件用于存储调用函数,在M文件 中不再包含GUI的布局代码,在开发应用程序时代码量大大 减少.
对象位置调整器中的第一栏是垂直方向的位置调整,第 二栏是水平方向的位置调整.
在选中多个对象后,可以方便的通过对象位置调整器调 整对象间的对齐方式和距离.
3. 用属性查看器设置控件属性
第7章-MATLAB图形用户界面设计
用户点击后可弹出供选择项。点击时会触发回调函数
用户点击时可根据范围取其当前值,以图形化的方法输入数据, 观测不同数据下的实验结果。点击时会触发回调函数
2020/6/8
清华大学出版社
1-4
静 面板
态
Panel
元
文本区
素
Text field
菜单项
菜
2020/6/8
清华大学出版社
1-7
2020/6/8
清华大学出版社
1-8
创建的基本步骤如下: 1. 首先确定中需要的元素,每个元素实现的功能,并在一张纸上画出界面布局 的草图。 2. 使用工具布局图形。可以使用中内嵌的工具调整图形的尺寸,以及元件之间 的间距。 3. 使用内嵌的属性编辑器为每个元件设置标签(),相当于地址,并为每个元件 设置特征,如颜色、显示的文本等等。 4. 保存。当图形保存后,将产生两个文件,这两个文件有相同的名字,但分别 以m和作为后缀。文件包含了你所创建的实际,而M文件则包含了图形和框架 中对每个元素的回调函数。 5. 为每个元素编写回调函数。
2020/6/8
清华大学出版社
1-3
元素 按钮
创建机制 Uicontrol
pushbutton
图
单选按钮
Uicontrol
形
Radio button
控
复选框 件
Uicontrol
Check box
编辑框
Uicontrol
Edit box 列表框 Uicontrol
List box
下拉列表
Uicontrol
Hale Waihona Puke 020/6/8清华大学出版社
第7章 MATLAB图形用户界面设计
2.GUI设计窗口 . 设计窗口 设计模板中选中一个模板, 按钮, 在GUI设计模板中选中一个模板,然后单击 设计模板中选中一个模板 然后单击OK按钮,就 按钮 会显示GUI设计窗口。选择不同的 设计窗口。 设计模式时, 会显示 设计窗口 选择不同的GUI设计模式时,在 设计模式时 GUI设计窗口中显示的结果是不一样的。 设计窗口中显示的结果是不一样的。 设计窗口中显示的结果是不一样的 GUI设计窗口由菜单栏、工具栏、控件工具栏以及图形对 设计窗口由菜单栏、工具栏、 设计窗口由菜单栏 象设计区等部分组成。 设计窗口的菜单栏有File、 象设计区等部分组成。GUI设计窗口的菜单栏有 设计窗口的菜单栏有 、 Edit、View、Layout、Tools和Help 6个菜单项,使用其中 个菜单项, 、 、 、 和 个菜单项 的命令可以完成图形用户界面的设计操作。 的命令可以完成图形用户界面的设计操作。
第7章 MATLAB图形用户界面设计 章 图形用户界面设计
7.1 图形用户界面开发环境 7.2 控件对象属性及设置 7.3 对话框设计 7.4 图形用户界面程序设计
7.1 图形用户界面开发环境
图形用户界面 (GraphicUserInterface-GUI) 图形用户开发环境(GUI DevelopmentEnvironment-GUIDE) 图形用户开发环境 图形用户开发环境提供的开发工具包括: 图形用户开发环境提供的开发工具包括 *布局编辑器 布局编辑器(Layout Editor) 布局编辑器 *几何排列工具 *几何排列工具(Alignment Tool) 几何排列工具(Alignment *属性编辑器 属性编辑器(PropertyInspector) 属性编辑器 *对象浏览器 对象浏览器(ObjectBrowser) 对象浏览器 *菜单编辑器 菜单编辑器(MenuEditor) 菜单编辑器
第7章 MATLAB图形用户界面设计
例7.1建立“图形演示系统”菜单。菜单条 中 含有3个菜单项:Plot、Option和Quit。Plot 中有Sine Wave和Cosine Wave两个子菜单项 ,分别控制在本图形窗口画出正弦和余弦曲 线。Option菜单项的内容如图7.1所示。其中 Grid on和Grid off控制给坐标轴加网格线Box on和Box off控制给坐标轴加边框,而且这4 项只有在画有曲线时才是可选的。 Figure Color控制图形窗口背景颜色。Quit控制是否 退出系统。
3
7.1.2 菜单对象常用属性
菜单对象具有公共属性:Children、 Parent 、 Tag 、 Type 、 UserData 、 Visible等。 常用的特殊属性:label、accelerator enable、callback、checked、position separator等。
8
uimenu(hfigcor,'Label','&White','Call','set(gcf,''Color '',''w'');'); %定义Quit菜单项 uimenu(gcf,'Label','&Quit','Call','close(gcf)');
9
7.1.3 快捷菜单
在MATLAB中,可以使用uicontextmenu函 数和图形对象的UIContextMenu属性来建快 捷菜单,具体步骤为: (1)利用uicontextmenu函数建立快捷菜单。 (2)利用uimenu函数为快捷菜单建立菜单项。 (3)利用set函数将该快捷菜单和某图形对象 联系起来。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
HYIT
5
HYIT
6
布局编辑器的启动
在命令窗口中输入:guide 在file→new →GUI
HYIT
7
选择菜单编辑器
HYIT
8
创建菜单项和子菜单项
HYIT
9
保存创建的GUI应用程序在fig文件中,并自 动生成同名的m文件用于存储调用函数
HYIT
10
设置菜单项的属性以及调用函数
如:errordlg('输入错误,请重新输入','错误信息
answer=inputdlg(prompt)
HYIT
21
列表选择对话框 [Selection ,ok]=listdlg(‘ListString,S,…) 信息提示对话框 msgbox(message) 问题提示对话框 button=questdlg(‘qstring’)
HYIT
26
★ 作业
P185 7.1
HYIT
27
教学内容
第1章 第2章 第3章 第4章 第5章 第6章 第7章 第8章 第9章 MATLAB概论 矩阵运算基础 数值计算基础 符号数学基础 基本图形处理功能 高级图形处理功能 图形用户界面设计 M文件程序设计基础 Simulink基础
1
HYIT
第7章 图形用户界面设计
内容提要:
7.1 图形用户界面开发环境
进程条 waitbar
警告信息对话框 warndlg
HYIT
22
7.4
图形用户界面程序设计
HYIT
23
设计图形用户界面 设置控件的标识 编写代码 包括设置对象的初始值、编写代码、运 行程序。
HYIT
24
【例7-2】信号分析仪的设计
HYIT
25
function pushbutton1_Callback(hObject, eventdata, handles) f1=str2double(get(handles.f1_input,'string')); f2=str2double(get(handles.f2_input,'string')); t=eval(get(handles.t_input,'string')); x=sin(2*pi*f1*t)+sin(2*pi*f2*t); y=fft(x,512);m=y.*conj(y)/512;f=1000*(0:256)/512; axes(handles.frequency_axes) plot(f,m(1:257)) set(handles.frequency_axes,'XMinorTick','on') grid on axes(handles.time_axes) plot(t,x) set(handles.time_axes,'XMinorTick','on') grid on
打印设置对话框函数:pagesetupdlg 打印预览对话框函数:printpreview。
HYIT
19
【例7-2】创建文件打开、保存和预览的对话框
HYIT
20
MATLAB专用对话框
错误信息对话框函数: errordlg(‘errorstring’,’dlgname’) 帮助信息对话框: helpdlg(‘helpstring’,’dlgname’) 如:helpdlg('矩阵尺寸必须相等','在线帮助') 输入对话框函数为:
HYIT
15
控件对象的属性包括:
公共属性 基本控制属性 修饰控制属性 辅助属性 Callback管理属性 P175 表7-6~7-10
HYIT
16
7.3 对话框设计
HYIT
17
windows公共对话框:是利用windows资
源的对话框,包括文件打开、文件保存、
颜色设置、字体设置、打印设置等对话
框。 MATLAB专用风格对话框:包括帮助、错 误信息、信息提示、警告信息对话框等。
HYIT
18
公共对话框 文件打开函数 uigetfile 文件保存函数 uiputfile 颜色设置对话框函数 uisetcolor(h_or_c,’DialogTile’)。 字体设置对话框函数 uisetfont(h,’DialogTitle’)
7.2 控件对象属性
7.3 对话框设计 7.4 图形用户界面程序设计
2
HYIT
7.1 图形用户界面开发环境
HYIT
3
布局编辑器 (layout editor):在图形窗 口中创建及布置图形对象 几何排列工具 (alignment tool):调整各 对象之间的相互几何关系和位置 属性编辑器(property inspector):查询 并设置对象的属性值) 对象浏览器(object brower):获得当前 MATLAB窗口中图形对象句柄的分级排列 菜单编辑器(menu editor):建立和编辑主 菜单和图形对象的鼠标右键菜单
点击可打开对 应的m文件,编 辑调用函数
点击可对控件 对象的所有属 性进行设置
HYIT
11
在布局编辑器的控件选择板上选择坐标轴, 拖放到合适的位置,并调整大小
调整大小 标识
HYIT
12
点击对象浏览器,察看当前图形对象句柄的 分级排列
HYIT
13
运行:Tools→run
HYIT
14
7.2 控件对象的属性
HYIT
4
【例7-1】建立图形演示系统菜单。
菜单条中含有3个菜单项:Plot、Option和 Quit。Plot中有Sine Wave和Cosine Wave两个 子菜单项,分别控制在本图形窗口画出正弦和 余弦曲线。Option菜单项包括:Grid on和Grid off控制给坐标轴加网格线,Box on和Box off 控制给坐标轴加边框。Window Color控制图形 窗口背景颜色。Quit控制是否退出。