matlab中GUIDE工具建立GUI界面

上传人:鲁** 文档编号:568479741 上传时间:2024-07-24 格式:PPT 页数:23 大小:143.01KB
返回 下载 相关 举报
matlab中GUIDE工具建立GUI界面_第1页
第1页 / 共23页
matlab中GUIDE工具建立GUI界面_第2页
第2页 / 共23页
matlab中GUIDE工具建立GUI界面_第3页
第3页 / 共23页
matlab中GUIDE工具建立GUI界面_第4页
第4页 / 共23页
matlab中GUIDE工具建立GUI界面_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《matlab中GUIDE工具建立GUI界面》由会员分享,可在线阅读,更多相关《matlab中GUIDE工具建立GUI界面(23页珍藏版)》请在金锄头文库上搜索。

1、第第1616章章 GUIDEGUIDE工具建立工具建立GUIGUI界面界面MATLAB可视化界面的设计,一般有两种方法,一是直接通可视化界面的设计,一般有两种方法,一是直接通过编辑过编辑M脚本文件产生脚本文件产生GUI,这个方法在上一章已经进行,这个方法在上一章已经进行详细的介绍。二是通过详细的介绍。二是通过MATLAB图形用户界面开发环境图形用户界面开发环境GUIDE(Graphical User Interface Development Environment)来建立)来建立GUI界面。界面。GUIDE是是MATLAB为为编写编写GUI界面提供的集成开发工具。本章将对界面提供的集成开发工

2、具。本章将对GUIDE进行进行详细的介绍,包括常用的控件、控件的属性、自动产生的详细的介绍,包括常用的控件、控件的属性、自动产生的M文件等。然后通过一些例子程序,讲解如何使用这些控文件等。然后通过一些例子程序,讲解如何使用这些控件。最后给出了两个综合一些的例子,介绍了如何建立更件。最后给出了两个综合一些的例子,介绍了如何建立更加实用的加实用的GUI界面。界面。16.1 16.1 采用采用GUIDEGUIDE建立建立GUIGUIGUI是通常包含图形窗口、坐标轴、菜单、按钮和文本等的是通常包含图形窗口、坐标轴、菜单、按钮和文本等的用户界面。用户界面。GUIDE提供了很多工具用于建立提供了很多工具用

3、于建立GUI界面。这界面。这些工具大大的简化了设计和建立些工具大大的简化了设计和建立GUI的过程。的过程。16.1.1 16.1.1 图形用户界面概述图形用户界面概述MATLAB为图形用户界面开发提供了一个方便高效的集成开为图形用户界面开发提供了一个方便高效的集成开发环境,发环境,GUIDE。GUIDE是一个界面设计工具集,提供是一个界面设计工具集,提供了界面的外观、属性和回调函数等。了界面的外观、属性和回调函数等。GUIDE将用户保存将用户保存好的好的GUI界面保存在一个界面保存在一个FIG资源文件中,同时还能够产资源文件中,同时还能够产生包含生包含GUI初始化和组件界面布局控制代码的初始化

4、和组件界面布局控制代码的M文件。这文件。这个个M文件为实现回调函数提供了一个参考框架。文件为实现回调函数提供了一个参考框架。16.1.1 GUIDE16.1.1 GUIDE启动启动用户可以在用户可以在MATLAB的命令行窗口输入:的命令行窗口输入:guide来启动来启动GUIDE。产生。产生GUIDE的快速启动窗口,如图的快速启动窗口,如图16.1所示。所示。在图在图16.1中,创建新的中,创建新的GUI时,有时,有4个模版可以选择:个模版可以选择:Blank GUI (Default):系统默认为空白模版。:系统默认为空白模版。GUI with Uicontrols:带有:带有uicontr

5、ol对象的模版。对象的模版。GUI with Axes and Menu:带有坐标轴和菜单的模版。:带有坐标轴和菜单的模版。Modal Question Dialog:带有问答式对话框的模版。:带有问答式对话框的模版。16.1.3 GUI16.1.3 GUI对象的常用属性对象的常用属性利用属性查看器可以查看对象的属性值,也可以对属性值进利用属性查看器可以查看对象的属性值,也可以对属性值进行修改。用鼠标选中某个对象,然后单击工具栏的行修改。用鼠标选中某个对象,然后单击工具栏的Property Inspector按钮或用鼠标双击该对象,则可以调按钮或用鼠标双击该对象,则可以调用该对象的属性查看器。

6、下面介绍一些常用的属性。用该对象的属性查看器。下面介绍一些常用的属性。1控件风格和外观控件风格和外观BackgroundColor:设置控件背景置控件背景颜色,使用色,使用R G B或或颜色定色定义。CData:在控件上:在控件上显示的真彩色示的真彩色图像,使用矩像,使用矩阵表示。表示。ForegroundColor:用于:用于设置控件上置控件上显示的文本的示的文本的颜色。色。String属性:属性:设置控件上的文本,以及列表框和置控件上的文本,以及列表框和弹出菜出菜单的的选项等。等。Visible:设置控件是否可置控件是否可见,可以取,可以取值为on或或off,默,默认值为on,即控件可,即

7、控件可见。当。当Visible属性属性设置置为off时,控件不,控件不可可见,但是控件仍然存在。,但是控件仍然存在。16.1.3 GUI16.1.3 GUI对象的常用属性对象的常用属性2控件的常规信息控件的常规信息Enable属性:表示控件的使能状属性:表示控件的使能状态,取,取值可以可以为on、inactive和和off,默,默认值为on。设置置为on时,该控件可用。控件可用。设置置为inavtive时,控件不可,控件不可用,但是外表看起来和用,但是外表看起来和为on时一一样。设置置为off时,表示控件不可用。,表示控件不可用。Style:设置控件置控件对象的象的类型,可以取型,可以取值为p

8、ushbutton、togglebutton、radiobutton、checkbox、edit、text、slider、frame、listbox、popupmenu,系,系统默默认值为pushbutton。Tag:该属性属性为控件名称,利用控件名称,利用该名称来命名控件的回名称来命名控件的回调函数的名称。例函数的名称。例如,如,对于于pushbutton类型的按型的按钮,GUIDE默默认的的Tag属性属性为pushbutton1,则回回调函数函数为pushbutton1_Callback( )。TooltipString属性:属性:该属性属性为字符串,用来字符串,用来设置提示信息。当鼠置提

9、示信息。当鼠标指指针位于此控件上位于此控件上时,显示示该提示信息。提示信息。UserData:设置用置用户指定的数据。利用指定的数据。利用该属性可以属性可以实现数据的数据的传递。Position:该属性属性设置控件置控件对象的位置和大小,向量象的位置和大小,向量为x y width height。Units:设置控件的位置及大小等的置控件的位置及大小等的单位,可以取位,可以取值为pixels、normalized、inches、points、centimeters和和characters。16.1.3 GUI16.1.3 GUI对象的常用属性对象的常用属性3控件的回调函数控件的回调函数Busy

10、Action:处理回理回调函数的中断。有两种函数的中断。有两种选项:即:即Cancel:取消中断事件,:取消中断事件,queue:排:排队(默(默认设置)。置)。ButtonDownFcn属性:按属性:按钮按下按下时的的处理函数。理函数。CallBack属性:是属性:是连接程序界面整个程序系接程序界面整个程序系统的的实质性功能性功能的的纽带。该属性属性值应该为一个可以直接求一个可以直接求值的字符串,在的字符串,在该对象被象被选中和改中和改变时,系,系统将自将自动地地对字符串字符串进行求行求值。CreateFcn:在:在对象象产生生过程中程中执行的回行的回调函数。函数。DeleteFcn:删除除

11、对象象过程中程中执行的回行的回调函数。函数。Interruptible属性:指定当前的回属性:指定当前的回调函数在函数在执行行时是否允是否允许中断,去中断,去执行其他的函数。行其他的函数。16.1.3 GUI16.1.3 GUI对象的常用属性对象的常用属性4. 控件当前状控件当前状态信息信息ListboxTop:在列表框中:在列表框中显示的最示的最顶层的字符串的索引。的字符串的索引。Max:最大:最大值。Min:最小:最小值。Value:控件的当前:控件的当前值。对于于单选按按钮如果被如果被选中中时,该属属性的性的值为Max属性属性值,如果没被,如果没被选中,中,则为Min属性属性值。16.1

12、.4 GUI16.1.4 GUI的的M M文件文件利用利用GUIDE可以生成可以生成M文件框架,通过文件框架,通过M文件决定文件决定GUI用户用户操作的响应。通过操作的响应。通过GUIDE可以自动生成可以自动生成M文件,然后在文件,然后在M文件中编写文件中编写GUI控件的回调函数。控件的回调函数。M文件由多个子函数构成,包括主函数、文件由多个子函数构成,包括主函数、Opening函数、函数、Output函数和回调函数。其中,主函数不能修改,和文函数和回调函数。其中,主函数不能修改,和文件名相同。件名相同。16.1.5 16.1.5 数据传递数据传递在在GUI的各个控件之间进行数据传递,可以采用

13、以下两种方的各个控件之间进行数据传递,可以采用以下两种方法:利用结构体法:利用结构体handles和控件的和控件的UserData属性。属性。结构体结构体handles保存了保存了GUI的数据。当在运行的数据。当在运行GUI时,时,M文件文件会自动产生结构体会自动产生结构体handles,其中保存了所有,其中保存了所有GUI对象的对象的数据,可以看作是一个数据的容器。用户可以在数据,可以看作是一个数据的容器。用户可以在handles中找到所有控件的信息。中找到所有控件的信息。handles在各个控件的在各个控件的callback之间传来传去。之间传来传去。在结构体在结构体handles中新建字

14、段中新建字段a,并保存变量,并保存变量a的值。的值。handles.a=a;guidata(hObject, handles);16.2 16.2 简单实例分析简单实例分析利用利用GUIDE可以非常方便的建立可以非常方便的建立GUI界面,同时建立了界面,同时建立了M文文件框架。通过在件框架。通过在M文件的回调函数中添加程序,可以非常文件的回调函数中添加程序,可以非常快速的建立快速的建立GUI界面。下面通过几个例子,介绍如何使用界面。下面通过几个例子,介绍如何使用GUIDE提供的控件。提供的控件。16.2.1 16.2.1 简单的按钮简单的按钮【例例16-2】简单的按钮例子。打开简单的按钮例子。

15、打开GUIDE,在,在GUI布局区放布局区放置置Push Button按钮。调制控件大小和窗口大小。双击该按钮。调制控件大小和窗口大小。双击该按钮设置属性值,按钮设置属性值,String设置为:关闭。设置为:关闭。choice=questdlg(你确定要关闭吗?,关闭对话框,Yes,No,No);switch choice, case Yes delete(handles.figure1); return; case No return;end16.2.2 16.2.2 简单的滑动条简单的滑动条【例例16-3】简单的滑动条例子。打开简单的滑动条例子。打开GUIDE,在,在GUI布局区布局区放置

16、静态文本控件放置静态文本控件Static Text和滑动条控件和滑动条控件Slider。然后。然后用鼠标双击静态文本控件,设置用鼠标双击静态文本控件,设置String属性的值为:属性的值为:“简简单滑动条例子!单滑动条例子!”。设置滑动条的属性,最大值为。设置滑动条的属性,最大值为1.0,最小值为最小值为0,最小步长,最小步长SliderStep为为0.01 0.1。16.2.3 16.2.3 弹出式菜单弹出式菜单【例例16-4】弹出式菜单例子程序。打开弹出式菜单例子程序。打开GUIDE,在,在GUI布局布局区放置静态文本控件区放置静态文本控件Static Text、可编辑文本、可编辑文本Ed

17、it Text,还有弹出式菜单,还有弹出式菜单Pop-up Menu。设置静态文本控件的。设置静态文本控件的String属性为:你选择的颜色。可编辑文本的属性为:你选择的颜色。可编辑文本的String属性属性为空。设置弹出式菜单的为空。设置弹出式菜单的String属性。修改文字的大小为属性。修改文字的大小为14。用鼠标拖动来修改控件的大小和窗口的大小。用鼠标拖动来修改控件的大小和窗口的大小。16.2.4 16.2.4 列表框列表框【例例16-5】列表框例子程序。打开列表框例子程序。打开GUIDE,在,在GUI布局区放布局区放置可编辑文本置可编辑文本Edit Text和列表框和列表框Listbo

18、x。设置静态文本。设置静态文本控件的控件的String属性为空。设置列表框的属性为空。设置列表框的String属性。修改属性。修改控件的文字大小为控件的文字大小为14。用鼠标拖动来修改控件的大小和。用鼠标拖动来修改控件的大小和窗口的大小。窗口的大小。16.2.5 16.2.5 加法运算加法运算【例例16-6】加法运算例子程序。打开加法运算例子程序。打开GUIDE,在,在GUI布局区布局区放置放置2个可编辑文本个可编辑文本Edit Text,Tag属性分别为属性分别为edit1和和edit2。添加。添加3个静态文本个静态文本Static Text,Tag属性分别为属性分别为text1、text2

19、和和text3。然后添加。然后添加pushbutton按钮,按钮,String属性为属性为“计算计算”。修改控件的文字大小为。修改控件的文字大小为14。用鼠。用鼠标拖动来修改控件和窗口的大小和位置。标拖动来修改控件和窗口的大小和位置。16.2.6 16.2.6 坐标轴坐标轴【例例16-7】简单坐标轴例子程序。打开简单坐标轴例子程序。打开GUIDE,在,在GUI布局布局区放置坐标轴区放置坐标轴Axes,3个可编辑文本个可编辑文本Edit Text,3个静态个静态文本文本Static Text,两个按钮,两个按钮pushbutton。3个静态文本个静态文本的的String属性分别为:频率、初相和幅

20、值。属性分别为:频率、初相和幅值。3个可编辑文个可编辑文本的本的Tag属性分别为属性分别为edit1、edit2和和edit3,分别表示正弦,分别表示正弦信号的频率、初相和幅值,默认值分别为信号的频率、初相和幅值,默认值分别为10、0和和1。两。两个按钮的个按钮的String属性分别为绘图和清除。修改控件的文字属性分别为绘图和清除。修改控件的文字大小为大小为14。用鼠标拖动修改控件和窗口的大小和位置。用鼠标拖动修改控件和窗口的大小和位置。16.2.7 16.2.7 菜单菜单【例例16-8】菜单例子程序。打开菜单例子程序。打开GUIDE,在,在GUI布局区放置布局区放置坐标轴坐标轴Axes,单击

21、工具栏的添加菜单按钮,编辑菜单。,单击工具栏的添加菜单按钮,编辑菜单。修改菜单的属性修改菜单的属性Label和和Tag。用鼠标拖动来修改控件和。用鼠标拖动来修改控件和窗口的大小和位置。窗口的大小和位置。16.2.8 16.2.8 快捷菜单快捷菜单【例例16-9】快捷菜单例子程序。打开快捷菜单例子程序。打开GUIDE,在,在GUI布局区布局区放置坐标轴放置坐标轴Axes,单击工具栏的添加菜单按钮,编辑快,单击工具栏的添加菜单按钮,编辑快捷菜单。修改菜单的属性捷菜单。修改菜单的属性Label和和Tag。双击坐标轴,显。双击坐标轴,显示坐标轴的属性设置窗口,修改坐标轴的属性示坐标轴的属性设置窗口,修

22、改坐标轴的属性UIContextMenu属性为属性为AxesMenu。用鼠标拖动来修改。用鼠标拖动来修改坐标轴和窗口的大小和位置。坐标轴和窗口的大小和位置。16.3 16.3 综合实例分析综合实例分析利用利用GUIDE设计设计GUI界面非常的方便、简单。在设计复杂的界面非常的方便、简单。在设计复杂的GUI界面时,需要很多的控件,例如菜单、按钮、坐标轴界面时,需要很多的控件,例如菜单、按钮、坐标轴等。下面介绍几个综合一些的例子程序。等。下面介绍几个综合一些的例子程序。16.3.1 16.3.1 声音的显示和播放声音的显示和播放【例例16-10】声音显示和播放例子。打开声音显示和播放例子。打开GU

23、IDE,在,在GUI布布局区放置坐标轴局区放置坐标轴Axes,添加弹出式菜单,添加弹出式菜单Pop-up Menu,添加添加2个按钮个按钮pushbutton。双击弹出式菜单,修改属性。双击弹出式菜单,修改属性值值String,分别为:选择声音、,分别为:选择声音、chirp、handel和和laughter。修连个按钮的。修连个按钮的String属性,分别为:播放声音属性,分别为:播放声音和程序退出,修改和程序退出,修改Tag属性分别是属性分别是palybutton和和closebutton。用鼠标拖动来修改坐标轴和窗口的大小和。用鼠标拖动来修改坐标轴和窗口的大小和位置。位置。16.3.2

24、16.3.2 语音实时采集和显示语音实时采集和显示【例例16-11】语音实时采集和显示例子。打开语音实时采集和显示例子。打开GUIDE,在,在GUI布局区放置布局区放置2个坐标轴个坐标轴Axes,添加,添加3个按钮个按钮pushbutton。修改。修改3个按钮的属性个按钮的属性String,分别为:开始、,分别为:开始、暂停和退出,暂停和退出,Tag属性分别为属性分别为startbutton、stopbutton和和exitbutton。修改控件的文字大小为。修改控件的文字大小为14。用鼠标拖动来。用鼠标拖动来修改坐标轴和窗口的大小和位置。修改坐标轴和窗口的大小和位置。16.6 16.6 本章小结本章小结本章详细的介绍了用于本章详细的介绍了用于GUI界面开发的界面开发的GUIDE工具。工具。GUIDE提供了很多的控件,利用这些控件可以非常方便的设计提供了很多的控件,利用这些控件可以非常方便的设计GUI界面。读者对控件的常用属性需要有一个大概的了解,界面。读者对控件的常用属性需要有一个大概的了解,通过属性的设置可以实现复杂的功能。对于常用控件的使通过属性的设置可以实现复杂的功能。对于常用控件的使用,本章给出了简单的例子程序。最后,通过两个综合一用,本章给出了简单的例子程序。最后,通过两个综合一些的例子,讲解如何设计复杂的些的例子,讲解如何设计复杂的GUI界面。界面。

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

最新文档


当前位置:首页 > 文学/艺术/历史 > 人文/社科

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