第8讲图形用户界面设计.ppt_第1页
第8讲图形用户界面设计.ppt_第2页
第8讲图形用户界面设计.ppt_第3页
第8讲图形用户界面设计.ppt_第4页
第8讲图形用户界面设计.ppt_第5页
已阅读5页,还剩74页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第八讲 MATLAB图形用户界面设计图形用户界面设计工具1主要内容图形用户界面的设计原则和一般步骤图形用户界面设计图形用户界面设计工具应用21 图形用户界面的设计原则和一般步骤 图形用户界面就是通过窗口、选单、按钮、文字说明等对象构成一个美观的界面,提供用户利用鼠标或键盘方便地实现操作。 MATLAB设计图形用户界面的方法有两种:使用可视化的界面环境(图形用户界面设计工具)和通过编写程序。 3设计原则1.简单性 设计界面时,应力求简捷、直观、清晰地体现出界面的功能和特征。窗口数目尽量少,力避不同窗口间来回切换;多采用图形,少用数值;不要出现可有可无的功能。4设计原则(续)2.一致性 两层含义:

2、一指自己设计的界面风格要尽量一致;二指新设计的界面要与其他已有的界面风格要一致。一般习惯图形区在界面左侧,控制区在右侧。5设计原则(续)3. 习常性 设计界面时,应尽量使用人们所熟悉的标志和符号,便于用户使用。4. 其他考虑因素 除了以上静态性能之外,还应注意界面的动态性能:界面对用户操作的响应要迅速、连续;对持续时间较长的运算要给出等待时间提示,并允许用户中断运算。6一般制作步骤界面制作包括界面设计和程序实现。分析界面所要实现的主要功能,明确设计任务;绘界面草图,注意从使用者的角度来考虑界面布局;按构思的草图,上机制作静态界面;编写界面动态功能程序。72 图形用户界面设计1 可视化的界面环境

3、 打开GUI设计工具的方法有以下几种:(1) 选择菜单“File”“ New”“GUI”命令;(2) 在指令窗口输入以下命令: guide 打开空白设计工作台 guide FN 在工作台中打开文件名为FN 的用户界面注意:在guide指令作用下,待打开的文件名不分字母的大小写。8图形用户界面设计(续) 打开的GUI启动界面提供新建界面(Create New GUI)和打开已有界面文件(Open Existing GUI)的属性页。新建界面可以选择空白界面、包含有控件的模板界面、包含有轴对象和菜单的模板界面、标准询问窗口等选项。 选择任意一项都会打开GUI设计工作台,对界面静态组成部分进行的具体

4、的修改工作都是在工作台实现的。9图形用户界面设计(续)如在指令窗键入:guide,则可得到如下GUI设计工具的启动界面:空白界面有控件的模板界面有轴对象和菜单的模板界面标准询问窗口10图形用户界面设计(续) 若激活打开已有界面文件(Open Existing GUI)的属性页,则可通过打开文件浏览器(Browse)选定需打开文件并打开,主窗口则显示最近打开的界面文件的列表。最近打开的界面文件列表打开文件浏览器11图形用户界面设计(续)如在新建界面中选择“Blank GUI (Default)”,然后单击“OK”按钮,就会出现如下的GUI设计工作台:12图形用户界面设计(续)GUI设计工作台有4

5、个功能区:菜单条、编辑工具条、控件模板区、设计工作区。菜单条编辑工具条控件模板区设计工作区13M文件编辑器运行控件面板对象浏览器界面设计区属性编辑器菜单编辑器对象对齐工具Tab顺序编辑器14图形用户界面设计工具MATLAB的用户界面设计工具(1) 图形用户界面设计窗口:在窗口内创建、安排各种图形对象。(2) 菜单编辑器(Menu Editor):创建、设计、修改下拉式菜单和快捷菜单。(3) 对象属性查看器(Property Inspector):可查看每个对象的属性值,也可修改设置对象的属性值。15图形用户界面设计工具(4) 位置调整工具(Alignment Tool):可利用该工具左右、上下

6、对多个对象的位置进行调整。(5) 对象浏览器(Object Browser):可观察当前设计阶段的各个句柄图形对象。(6) Tab顺序编辑器(Tab Order Editor):通过该工具,设置当用户按下键盘上的Tab键时,对象被选中的先后顺序。16GUI设计模板MATLAB为GUI设计一共准备了4种模板Blank GUI(默认)GUI with Uicontrols(带控件对象的GUI模板)GUI with Axes and Menu(带坐标轴与菜单的GUI模板) Modal Question Dialog(带模式问话对话框的GUI模板) 当用户选择不同的模板时,在GUI设计模板界面的右边就

7、会显示出与该模板对应的GUI图形。17对象属性查看器在选中某个对象后,可以通过对象属性查看器,查看该对象的属性值,也可以方便地修改对象属性的属性值。从GUI设计窗口工具栏上选择Property Inspector命令按钮View菜单下的Property Inspector子菜单,就可以打开对象属性查看器。另外,在MATLAB命令窗口的命令行上输入inspect,也可以看到对象属性查看器。18菜单编辑器利用菜单编辑器,可以创建、设置、修改下拉式菜单和快捷菜单。从GUI设计窗口的工具栏上选择Menu Editor命令按钮或Tools菜单下的Menu Editor子菜单,就可以打开菜单编辑器。菜单编

8、辑器左上角的第一个按钮用于创建一级菜单项。第二个按钮用于创建一级菜单的子菜单。菜单编辑器的左下角有两个按钮,选择第一个按钮,可以创建下拉式菜单,选择第二个按钮,可以创建Context Menu菜单。菜单编辑器的右边就会显示该菜单的有关属性,可以在这里设置、修改菜单的属性。19创建用户菜单1.菜单编辑在GUI设计工作台的菜单条选择“Tool”Menu Editor”或单击工具栏“Menu Editor”按钮,就会出现菜单编辑器窗口。新建菜单新建子菜单菜单左、右移菜单上、下移删除菜单填写菜单名,如果在前面加“&”符号则加快捷键,当运行时第一个字母会加下划线,以便用户快速激活菜单项标记分隔符初值是否

9、已选输入回调函数20位置调整工具利用位置调整工具,可以对GUI对象设计区内的多个对象的位置进行调整。从GUI设计窗口的工具栏上选择Align Objects命令按钮,或者选择Tools菜单下的Align Objects菜单项,就可以打开对象位置调整器。对象位置调整器中的第一栏是垂直方向的位置调整。对象位置调整器中的第二栏是水平方向的位置调整。在选中多个对象后,可以方便的通过对象位置调整器调整对象间的对齐方式和距离。21对象浏览器利用对象浏览器,可以查看当前设计阶段的各个句柄图形对象。从GUI设计窗口的工具栏上选择Object Browser命令按钮,或者选择View菜单下的Object Bro

10、wser子菜单,就可以打开对象浏览器。在对象浏览器中,用鼠标双击图中的任何一个对象,可以进入对象的属性查看器界面。22Tab顺序编辑器利用Tab顺序编辑器(Tab Order Editor),可以设置用户按键盘上的Tab键时,对象被选中的先后顺序。选择Tools菜单下的Tab Order Editor菜单项,就可以打开Tab顺序编辑器。例如,若在GUI设计窗口中创建了3个对象,与它们相对应的Tab顺序编辑器。231. GUI控件对象类型 控件对象是事件响应的图形界面对象。当某一事件发生时,应用程序会做出响应并执行某些预定的功能子程序(Callback).2. 控件对象的描述 Matlab中的控

11、件大致可分为两种,一种为动作控件,鼠标点击这些控件时会产生相应的响应。一种为静态控件,是一种不产生响应的控件,如文本框等。 控件对象及属性 每种控件都有一些可以设置的参数,用于表现控件的外形、功能及效果,既属性。属性由两部分组成:属性名和属性值,它们必须是成对出现的。24按钮(Push Buttons):执行某种预定的功能或操作;开关按钮(Toggle Button):产生一个动作并指示一个二进制状态(开或关),当鼠点击它时按钮将下陷,并执行callback(回调函数)中指定的内容,再次点击,按钮复原,并再次执行callback 中的内容;单选框(Radio Button):单个的单选框用来在

12、两种状态之间切换,多个单选框组成一个单选框组时,用户只能在一组状态中选择单一的状态,或称为单选项;复选框(Check Boxes):单个的复选框用来在两种状态之间切换,多个复选框组成一个复选框组时,可使用户在一组状态中作组合式的选择,或称为多选项;文本编辑器(Editable Texts):用来使用键盘输入字符串 的值,可以对编辑框中的内容进行编辑、删除和替换等操作;25静态文本框(Static Texts):仅用于显示单行的说明文字;滚动条(Slider): 可输入指定范围的数量值;边框(Frames):在图形窗口圈出一块区域;列表框(List Boxes):在其中定义一系列可供选择的字符串

13、;弹出式菜单(Popup Menus): 让用户从一列菜单项中选择一项作为参数输入;此外还有坐标轴(Axes), 用于显示图形和图象。26 用户可以在创建控件对象时,设定其属性值,未指定时将使用系统缺省值。3. 控件对象的属性(Attributes of controller object) 两大类控件对象属性:第一类是所有控件对象都具有的公共属性,第二类是控件对象作为图形对象所具有的属性。27控件对象的公共属性Children 取值为空矩阵,因为控件对象没有自己的子对象;Tag取值为字符串,定义了控件的标识值,在任何程序中都可以通过这个标识值控制该控件对象;Type 取值为uicontrol

14、,表明图形对象的类型;Visible取值为on 或off。UserDate取值为空矩阵,用于保存与该控件对象相关的重要数据和信息;Parent取值为某个图形窗口对象的句柄,该句柄表明了控件对象所在的图形窗口;28控件的常用属性创建控件以后,需要对控件的各种属性进行设置,大部分控件都具有以下属性。(1)string属性:用于显示在控件上的字符串,起说明或提示作用。(2)callback属性:回调函数,与菜单的一样。(3)enable属性:表示该控件是否有效,”on“表示有效,”off“表示无效。(4)tooltipstring属性:当鼠标放在控件上时显示提示信息,为字符串。(5)字体属性:包括f

15、ontname,fontsize等。(6)Tag属性:控件的标记,用于标识控件。 29BackgroundColor取值为颜色的预定义字符或RGB数值;缺省值为浅灰色;Callback取值为字符串,可以是某个M文件名或一小段Matlab语句,当用户激活某个控件对象时,应用程序就运行该属性定义的子程序;Enable取值为on(缺省值),inactive和off;Extend取值为四元素矢量0, 0, width, height,记录控件对象标题字符的位置和尺寸;ForegroundColor取值为颜色的预定义字符或RGB数值,该属性定义控件对象标题字符的颜色;缺省值为黑色;Max,Min取值都为

16、数值,缺省值分别为1和0;String取值为字符串矩阵或块数组,定义控件对象标题或选项内容;Style取值可以是pushbutton(缺省值), radiobutton, checkbox, edit, text, slider, frame, popupmenu 或listbox;Units取值可以是pixels (缺省值), normalized(相对单位), inches, centimeters(厘米)或points(磅);Value取值可以是矢量,也可以是数值,其含义及解释依赖于控件对象的类型。控件对象的基本控制属性30FontAngle取值为normal(正体,缺省值), ital

17、ic(斜体), oblique(方头);FontName取值为控件标题等字体的字库名;FontSize取值为数值;FontUnits取值为points(缺省值), normalized, inches, centimeters或pixels;FontWeight取值为normal(缺省值), light,demi和bold,定义字符的粗细;HorizontalAligment取值为left,center (缺省值) 或 right,定义控件对象标题等的对齐方式。控件对象的修饰控制属性31ListboxTop取值为数量值,用于listbox控件对象;SliderStep取值为两元素矢量minst

18、ep,maxstep,用于slider控件对象;Selected取值为on 或off(缺省值) ;SlectionHoghlight取值为on 或off(缺省值) 。控件对象的辅助属性BusyAction取值为cancel或queue(缺省值) ;ButtDownFun取值为字符串,一般为某个M文件名或一小段Matlab程序;Creatfun 取值为字符串,一般为某个M文件名或一小段Matlab程序;DeletFun取值为字符串,一般为某个M文件名或一小段Matlab程序;HandleVisibility取值为on(缺省值), callback或off;Interruptible取值为on 或

19、off(缺省值) 。Callback管理属性32对象对齐工具、属性编辑器和对象浏览器对象对齐工具用来将用户界面的多个控件对齐;通过对象浏览器可以查看用户界面中的所有对象;在属性编辑器中可以设置和查看对象的各种属性。33回调函数 实现GUI的基本机制是对控件的属性编程。在设计界面中选定需要编写回调函数的对象,然后选择菜单”View”“Object Callbacks”,就会出现4个子菜单,都是用来编写回调函数的。 当选择各选单项时,MATLAB会提醒用户保存设计的界面,然后打开M文件编辑器/调试器,可看到机器自动生成了一个函数文件,用户即可在该文件中带%标记的行填写回调指令,其余指令用户不必也不

20、能更改。34回调函数CreateFcn是控件对象创建的时候发生DeleteFcn是在空间对象被清除时候发生ButtonDownFcn鼠标点击时发生KeyPressFcn按键时发生 35设计一个GUI界面的步骤(1)界面布局设计通过拖拽控件面板中的控件到界面设计区中;然后使用对象对齐工具(Align Objects)进行控件的布局调整,使用Tab顺序编辑器(Tab Order Editor)对各控件的Tab顺序进行较好地设置;如果界面需要菜单,则使用菜单编辑器(Menu Editor)进行菜单的设计;添加完控件后在对象浏览器(Object Browser)中就可以看到所有的图形对象,完成界面的布

21、局设计。(2)属性设置打开属性编辑器(Property Inspector)对相关的属性进行修改 。(3)编写回调函数363 图形用户界面设计工具应用简单的图形用户界面设计实例例1 创建一个用户界面,实现单击按钮在坐标轴中绘制正弦曲线的功能,运行界面如图所示。(1)创建一个空白的GUI界面(2)创建控件(3)调整控件布局(4)设置各控件的Tab顺序(5)设置控件的属性(6)编写回调函数(7)运行GUI界面程序373 图形用户界面设计工具应用【例2】 利用GUI工具设计用户界面。该界面具有以下功能:(1)在编辑框中,可输入数据,在按【enter】键后,在轴上画出相应的蓝色曲线。(2)在点击【Gr

22、id on】或【Grid off】键时,在轴上 画出或删除“分格线”;缺省时无分格线。(3)在菜单【Options】下,有2个下拉菜单【Box on】和【Box off】;缺省时为Box off状态。(4)所设计的界面和其上图形对象、控件对象都按比例缩放。38图形用户界面设计工具应用(续)界面最终效果图如下所示:39图形用户界面设计工具应用(续) 由于本例的设计界面清晰、要求明确,所以无需进行功能分析和绘制草图,而可直接进入界面制作阶段。40图形用户界面设计工具应用(续) 使用“guide”命令启动GUI界面,选择“Blank GUI”出现GUI设计工作台,调整图形大小,将界面窗口左边的控件模

23、板区中的控件拖放到设计工作区中。 放置以下控件:一个坐标轴、两个静态文本框、一个可编辑文本框、两个按钮;然后打开对象对齐工具对齐各控件,界面布局如下图。 41图形用户界面设计工具应用(续)42图形用户界面设计工具应用(续)2. 设置控件属性 双击工作区及控件可引出图形窗和相应控件的“属性编辑框(Property Inspector)”。 在图形窗的属性编辑框中,设置如下属性值:Name guil2 %图形窗的名称Resize on %图形窗可以缩放Tag figuer1 %生成handles.figure1域存放图形窗句柄43图形用户界面设计工具应用(续)在轴属性编辑框中,设置如下属性值:Un

24、its normalized %使得所有新建对象随所在图形窗按比例缩放Box off %坐标轴不封闭Tag axes1 %生成handles.axes1域存放轴句柄XLim 0,15 %X轴范围YLim 0,2 %Y轴范围44图形用户界面设计工具应用(续)在图形区上方的静态文本的属性编辑框中,设置如下属性值:Fontsize 0.7 %字体大小FontUnits normaliszed %采用相对度量单位,缩放时保持字体比例String 响应曲线 %显示在界面上的字符Tag title_text %生成handles.title_text域存放静态文本句柄HorizontalAlignment

25、 Center %文字中心对齐Units normalized %采用相对度量单位,缩放时保持该区比例45图形用户界面设计工具应用(续)注: Units或FontUnits可选择:inches(英寸),centimeters (厘米), normalized(按比例缩放),points(点阵), pixels (像素), characters(字符)。如果选择normalized,那么当resize设为on时,控件或字体大小随着整个窗口的缩放而改变。 水平对齐方式 HorizontalAlignment可以是left, center, right。 控件句柄Tag有默认值,建议修改为带有具体含

26、义的字符串,以增加程序可读性和方便回调函数调用。46图形用户界面设计工具应用(续)在可编辑文本上方的静态文本的属性编辑框中,设置如下属性值:Fontsize 0.5 %字体大小FontUnits normaliszed %采用相对度量单位,缩放时保持字体比例HorizontalAlignment Center %文字中心对齐String 输入数据 %显示在界面上的字符Tag edit_text %生成handles.edit_text域存放静态文本句柄Units normalized %采用相对度量单位,缩放时保持该区比例47图形用户界面设计工具应用(续)在可编辑文本的属性编辑框中,设置如下属

27、性值:Fontsize 0.6 %字体大小FontUnits normaliszed %采用相对度量单位,缩放时保持字体比例HorizontalAlignment Center %文字中心对齐String %在界面上显示为空白Tag zeta_edit %生成handles.zeta_edit域存放弹出式选单句柄Units normalized %采用相对度量单位,缩放时保持该区比例48图形用户界面设计工具应用(续)在上按键的属性编辑框中,设置如下属性值:Fontsize 0.5 %字体大小FontUnits normaliszed %采用相对度量单位,缩放时保持字体比例HorizontalA

28、lignment Center %文字中心对齐String Grid on %在按键上显示Grid onTag GridOn_push %生成handles.GridOn_push域存放该键句柄Units normalized %采用相对度量单位,缩放时保持该键比例49图形用户界面设计工具应用(续)在下按键的属性编辑框中,设置如下属性值:Fontsize 0.5 %字体大小FontUnits normaliszed %采用相对度量单位,缩放时保持字体比例HorizontalAlignment Center %文字中心对齐String Grid off %在按键上显示Grid offTag Gr

29、idOff_push %生成handles.GridOff_push域存放该键句柄Units normalized %采用相对度量单位,缩放时保持该键比例50图形用户界面设计工具应用(续)3. 精细调整控件的大小及其相对位置 直接拖拉控件调整其大小;通过对象对齐工具将控件摆放整齐。4. 创建菜单 点击“菜单编辑器”图标,引出空白菜单编辑对话窗,再点击该对话窗最左上方的“新菜单New Menu”图标,在左侧空白窗口中,出现”Untitled1”图标;点击此图标则在右侧引出填写栏,在“lable”中填写Options;在“Tag”中填写options,于是左侧的”Untitled1”图标变成“Op

30、tions”图标,表示此菜单已生成。51图形用户界面设计工具应用(续)先点亮左侧的“Option”图标,再点击菜单编辑对话窗上的“新菜单项New Menu Item”图标,就引出等待定义的菜单项;在右侧的“Label”中填写Box on,在“Tag”中填写box_on。重复该小步操作,建立另一个菜单项Box off。 注意:菜单编辑对话窗上的“Callback”不要填写,机器自动生成。52图形用户界面设计工具应用(续)5. 界面的激活和回调函数的生成 点击工作台上的”运行界面“的工具图标,会出现一个询问对话框,当按提示对以上的设计进行存储以后,就会引出2个界面:名为guil2的(待激活的)图形

31、用户界面;展示名为guil2的(待填写回调指令的)M函数文件的文件编辑器界面。同时,在当前目录或给定目录上,由MATLAB自动生成了2个文件,即guil2.fig和guil2.m。53图形用户界面设计工具应用(续)在guil2.m文件中,填写回调指令:function zeta_edit_Callback(hObject, eventdata, handles)%hObject为发生事件的源控件% eventdata为事情数据结构% handles为传入对象句柄z=str2num(get(handles.zeta_edit,String) %从编辑框中获取zeta数据y=2*exp(-0.5*

32、z).*sin(2*pi*z); plot(z,y);54图形用户界面设计工具应用(续)Function varargout=GridOn_push_Callback(hObject, eventdata, handles,varargin)grid on %配合Grid on 按键操作的指令function varargout=GridOff_push_Callback(hObject, eventdata, handles,varargin)grid off % 配合Grid off 按键操作的指令55图形用户界面设计工具应用(续)function varargout=box_on_Cal

33、lback(hObject, eventdata, handles,varargin)box on %配合菜单Box on的操作指令set(handles.box_on,enable,off) %使菜单项Box on失能set(handles.box_off,enable,on) %使菜单项Box off使能56图形用户界面设计工具应用(续)function varargout=box_off_Callback(hObject, eventdata, handles,varargin)box off %配合菜单Box off的操作指令set(handles.box_off,enable,off

34、) %使菜单项Box off 失能 set(handles.box_on,enable,on) %使菜单项Box on 使能57图形用户界面设计工具应用(续)注意:在填写回调函数时,只有带%标记的那些行指令是用户为满足设计要求而填写的,其余指令都是机器自动生成的,用户不必也不能更改6. 图形用户界面的使用 经过以上几个步骤生成的图形用户界面已经可以使用了,只要Myguil.m和Myguil.fig在当前目录或在MATLAB搜索路径上,那么在指令窗运行Myguil就能使用该界面。生成的界面如下图所示:58图形用户界面设计工具应用(续)59图形用户界面设计工具应用(续)例2 设计一个GUI,实现计

35、算器的功能步骤一:界面功能分析 该计算器能完成数字的四则运算及部分常用的科学计算,如sin,cos,log等。步骤二:绘界面草图 可有多种风格的界面。60图形用户界面设计工具应用(续)草图一:数值显示区(参加计算的数值及计算结果)数字按钮(09十个数字及小数点)代表+,-,*,/的计算按钮开始计算及清零按钮61图形用户界面设计工具应用(续)草图二:计算式第一个数字的编辑显示计算式两个数字间的计算关系计算式第二个数字的编辑显示计算结果显示区代表+,-,*,/等运算的按钮开始计算及清零按钮62图形用户界面设计工具应用(续)草图三:表达式编辑显示区(格式和MATLAB命令相同)计算结果显示区开始计算

36、及清零按钮63图形用户界面设计工具应用(续)步骤三:设计界面( 选择草图一)初步布局 打开GUI工作台,通过用鼠标拖拉“工作区”右下角的“小黑块”使工作区的大小合适,然后根据草图从控件选择区选择相应的控件拖拉到工作区的相应位置。效果图如下页所示:64图形用户界面设计工具应用(续)65图形用户界面设计工具应用(续)2. 修改控件属性1)双击设计工作区的空白部分,打开图形窗的属性框,设置属性如下: MenuBar none %图形窗不使用标准菜单 Name Experiment1 %图形窗名称 Resize off %图形窗不能缩放 Tag mainWnd %生成handles.mainWnd域存

37、放图形窗句柄66图形用户界面设计工具应用(续)2)静态文本编辑框的属性设置。以”expression”文本框为例: FontSize 15 %字体大小 Fontunits point % 字体大小的度量单位 HorizontalAlignment Center %对齐方式 String Expression %待显示的字符 Tag text1 %生成handles.text1存放该静态文本框的句柄 Units point %文本框度量单位 67图形用户界面设计工具应用(续)3)可编辑文本框的属性设置 Sting 0 %初始状态下显示数字0 Tag pExp %可编辑文本框的句柄 其它与静态文本

38、框相同68图形用户界面设计工具应用(续)4)单功能按钮属性设置。以按钮“1”为例: String 1 Tag p1其它和静态文本框相同。69图形用户界面设计工具应用(续)3. 创建菜单 创建一个“操作”菜单,带两个下拉选单“计算”和“清零”。70图形用户界面设计工具应用(续)步骤四:激活界面,填写回调函数 保存静态界面后,利用工具栏上的运行界面按钮激活界面,同时,机器自动生成了guil.fig和guil.m两个文件。 打开guil.m文件,可看到自动生成的回调函数,该函数的命名利用对象句柄进行区分,没有任何执行语句。71图形用户界面设计工具应用(续)回调函数:Tag_Callback(hObj

39、ect,eventdata,handles) 通过加入自己的处理语句,才可实现所需的功能。 其中,hObject是该控件的句柄;evendata是备用参数,目前没有定义;handles是用户数据,本身是一个构架数组,存放了当前窗口所有对象的句柄,包括图形窗本身、所有控件和菜单的句柄,并且可以增加一些域用来传递用户数据。 利用guidata(H,handles)可以更新H的用户数据。对本例来说,先需要定义几个用户变量,以便记录参加运算的数值,进行计算。72图形用户界面设计工具应用(续)function guil_OpeningFcn(hObject, eventdata, handles, va

40、rargin)handles.output = hObject;handles.s_Exp=; %以字符串的形式记录计算表达式handles.s_Num=; %以字符串的形式记录编辑框中要显示的数值handles.i=1;% s_Exp的计数器handles.j=1;% s_Num的计数器handles.flag=0; %用来区分四则运算和函数运算的标志% Update handles structureguidata(hObject, handles);73图形用户界面设计工具应用(续)数字按钮的回调函数,以数字1按钮的回调函数为例function p1_Callback(hObject, eventdata, handles)handles.s_Exp(handles.i)=1;handles.s_Num(handles.j)=1;handles.i=handles.i+1;handles.j=handles.j+1;guidata(handles.mainWnd,handles);set(handles.pExp,s

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论