【教学课件】第九讲MATLAB图形用户界面设计.ppt
《【教学课件】第九讲MATLAB图形用户界面设计.ppt》由会员分享,可在线阅读,更多相关《【教学课件】第九讲MATLAB图形用户界面设计.ppt(38页珍藏版)》请在三一办公上搜索。
1、第九讲 MATLAB图形用户界面设计,设计原则和一般步骤 图形用户界面设计工具介绍用户控件的制作 用户菜单的制作回调函数M函数文件实现图形用户界面实验一:计算器程序,2023/8/7,3,9.1设计原则和一般步骤,1)分析界面所要实现的主要功能,明确设计任务。2)绘界面草图,注意从使用者的角度来考虑界面布局。3)利用GUI设计工具制作静态界面。4)编写动态功能程序。注意:1)先完成大致界面布局,再编写功能程序。2)界面风格要一致,且符合使用习惯。例如,一般习惯图形区在上面或左面,控制区在下面或右面等等。,2023/8/7,4,例如,以本次试验的内容“计算器”为例。1)功能分析:完成数字的四则运
2、算,以及一部分常用的科学计算:sin,cos,log等等。2)界面草图:可以有多种风格的界面。给出几种设计草图。草图一草图二草图三3)利用GUI设计工具实现草图的布局,caculator.fig。4)编写相应的程序完成计算器的各项功能,caculator.m。,2023/8/7,5,9.2 图形用户界面设计工具介绍,MATLAB6.5版本的GUI设计工具较前面的版本有很大的改善,设计界面变化很大。打开GUI设计工作台的命令:guide%打开设计工作台启动界面guide file%在工作台中打开文件名为file的用户界面菜单项 File:New-GUI%打开设计工作台启动界面注意:guide命令
3、中文件名不区分大小写。打开的GUI启动界面提供新建界面(Create New GUI)或打开已有界面文件(Open Existing GUI)的属性页。新建界面可以选择空白界面、包含有控件的模板界面、包含有轴对象和菜单的模板界面、标准询问窗口等选项。选择任意一项都会打开GUI设计工作台,对界面静态组成部分进行的具体的修改都在工作台实现。,2023/8/7,6,GUI设计工具的启动界面,2023/8/7,7,GUI设计工作台,设计工作区,主要由4个功能区,六个实用工具组成,菜单条,2023/8/7,8,对象选择按钮,用来选取工作区上分布的控件。单功能按键,按下操作代表一定的功能实现。双位按键,代
4、表“开”“关”两种状态。互斥选择按钮,多个选项互斥选择时使用。互容选择按钮,同时选中多个选项时使用。编辑文本框,可以自由输入字符,编辑字符串静态文本框,用于显示注释说明用文字,不可编辑。滑动块,利用游标滑动,可以获取不同的值。控件区域框,用于对控件区域进行标识。列表框,提供多个可供选择的选项,可以互容选择。弹出框,带有多个选项,只能选择其中一项。轴对象,用来显示图形。,用户控件列表:,2023/8/7,9,以“计算器”界面草图一为例。1.初步布局,根据草图将控件选择区的相应控件拖拉到设计工作区的相应位置。,2023/8/7,10,2.修改控件属性,每一个控件都不可能是完全符合界面设计要求的,需
5、要对其属性进行设置,以获得所需的界面显示效果。,可以通过双击该控件,或利用GUI设计工具的下拉菜单View:Property Inspector打开控件属性对话框。属性对话框具有良好的交互界面,以列表的形式给出该控件的每一项属性。例如右图是“+”按钮的属性列表。,2023/8/7,11,下面对各控件的主要属性进行一下说明。1)双击设计工作区的空白部分,打开整个图形窗的属性框。MunuBar:none%图形窗是否使用标准菜单Name:caculator%图形窗名称Resize:off%图形窗不能缩放Tag:mainWnd%图形窗的句柄 handles.mainWnd2)静态文本编辑框的属性设置。
6、FontSize:15%字体大小FontUnits:points%字体大小的度量单位HorizontalAlignment:Center%对齐方式String:Expression%待显示的字符Tag:text1%该静态文本框的句柄handles.text1Units:points%文本框度量单位,Units或FontUnits可选择:inches(英寸),centimeters(厘米),normalized(按比例缩放),points(点阵),pixels(像素),characters(字符)。如果选择normalized,那么当resize设为on时,控件或字体大小随着整个窗口的缩放而改变
7、。水平对齐方式 HorizontalAlignment可以是left,center,right。控件句柄Tag有默认值,建议修改为带有具体含义的字符串,以增加程序可读性和方便回调函数调用。,2023/8/7,12,3)可编辑文本框的属性设置。String:0%初始状态下显示数字0Tag:pExp%可编辑文本框的句柄其它和静态文本框相同4)单功能按钮属性设置。以按钮“1”为例String:1Tag:p1其它和静态文本框相同。3.精细调整利用对齐工具,排列控件的位置,使控件的大小、位置更加协调。,2023/8/7,13,4.界面激活保存静态界面后,利用工具栏上的运行按钮激活该界面。激活后可以看到两
8、个同名文件:caculator.m和caculator.fig。caculator.m文件在M文本编辑器中打开,caculator.fig文件显示为操作界面,但是无法实现任何功能,需要编写回调函数。,2023/8/7,14,9.4 回调函数,在M文本编辑器中打开caculator.m文件,可以看到自动生成的回调函数,该函数的命名利用对象句柄进行区分,没有任何执行语句。回调函数:Tag_Callback(hObject,eventdata,handles),通过加入自己的处理语句,可以实现所需的功能。其中:hObject是该控件的句柄;eventdata是备用参数,目前没有定义;handles是
9、用户数据,本身是一个结构数组,存放了当前窗口的所有对象的句柄,包括图形窗本身、所有控件和菜单的句柄。并且可以增加一些域用来传递用户数据。利用guidata(H,handles)可以更新 H 的用户数据。,2023/8/7,15,先设5个参数handles.start=1;%不能一开始输入运算符号handles.term=0;%运算完,进行新的运算handles.repeat=0;%不能重复输入运算符号handles.point=0;%不能重复输入点handles.bracket=0;%输入sin,cos,log,log10后不能在输入数字,只能输入运算符号,2023/8/7,16,只用编0的程
10、序来说明,其他从1到9都是一样的程序,function pushbutton0_Callback(hObject,eventdata,handles)%hObject handle to pushbutton0(see GCBO)%eventdata reserved-to be defined in a future version of MATLAB%handles structure with handles and user data(see GUIDATA)if(handles.start)%如果没有数字按入,一开始运算符号无法输入 content=;set(handles.edit
11、,string,content);%把空的内容显示出来 handles.start=0;guidata(hObject,handles);%更新句柄结构endcontent=get(handles.edit,string);%把前面输入的内容保存在content中 if(handles.term)%计算结束后,就为空,继续下一次输入 content=;handles.term=0;guidata(hObject,handles);endif(handles.bracket)%sin,cos,log,log10输入后,不能在接数字,只能接运算符号 guidata(hObject,handles)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 教学课件 教学 课件 第九 MATLAB 图形 用户界面 设计
链接地址:https://www.31ppt.com/p-5661591.html