经典GUI基础入门:MATLAB中GUI用户图形界面学习
- 格式:pdf
- 大小:577.31 KB
- 文档页数:15
第 8 章 图形用户界面GUI假如读者所从事的数据分析、解方程、计算结果可视工作比较单一,那么一般不会考虑图形用户界面(Graphical User Interfaces ,GUI )的制作。
但是如果读者想向别人提供某种新的设计分析工具,想体现某种新的设计分析理念,想进行某种技术、方法的演示,那么图形用户界面也许是最好的选择之一。
MATLAB 本身提供了很多的图形用户界面,如sisotool “单输入单输出控制系统设计工具”、fdatool “滤波器设计和分析工具”等。
这些工具的出现不仅提高了设计和分析效率,而且改变原先的设计模式,引出了新的设计思想,改变了和正在改变着人们的设计、分析理念。
正是出于这种观察,作者将图形用户界面内容列入本教程。
本章由四个精心设计的算例组成。
这四个算例,一方面尽可能多地向读者展现构成GUI 的各种控件或组件,另方面借助算例中回调函数的编写较快地将读者引向GUI 制作的纵深。
本书作者相信:读者只要耐心地按照示例进行操作,便能在愉快感受GUI 成功制作的同时,事半功倍地掌握GUI 的制作技巧。
8.1 图形用户界面入门示例【例8.1-1】为演示归一化二阶系统121)(2++=s s s G ζ中阻尼比ζ对单位阶跃响应的影响,需要制作如图8.1-1所示的用户界面图8.1-11)图8.1-2 进入GUIDE开发环境的默认引导对话窗图8.1-3 默认的空白用户界面开发环境GUIDE 2)●●点选“轴Axes”图标;●点选“静态文本框Static Text”图标●点选“可编辑文本框Edit Text ”图标图8.1-4 3)界面组件的参数设置●用户界面窗的参数设置⏹,再点击界面编辑器工具条上的图标,图8.1-5 ●●●●图8.1-6 4)●点击工具条上的图标,●●●图8.1-7图8.1-85)●,点击HOME工具带NAVIGATE导航区上的Go To转至图标●●get(hObject,'String'); %zeta=str2double(get(hObject,'String')); %handles.t=0:0.05:15; %handles.y=step(tf(1,[1,2*zeta,1]),handles.t); %cla %line(handles.t,handles.y) %●●,再点击界面编辑器(或M文件编辑器)上的图标,图8.1-9图8.1-106)〖说明〗8.2 控件创建及应用示例本小节仍以算例为依托,详细讲述用户界面的创建步骤和注意要点。
GUI指导教程系列(1):GUI入门基本操作为什么在MATLAB中要使用GUI呢?其实GUI就是Matlab中的Visual Basic,是面向对象的编程,可以使Matlab程序的终端用户,即使不懂的Matlab也可以轻易操作该程序!如果没有图形用户界面(GUI)我们只能从命令行(Command Window)中调用相关程序,这相对比较繁琐,并且不是所有用户都是这个能力。
就好比计算机的DOS 系统,在有windows的情况下,您会选择DOS吗?当然我们也不排除骨灰级的人物!在本节教程我们主要针对没有GUI创建和使用经历的网友,但是必要的MATLAB 基础知识是需要的。
在教程中我们将创建一个简单的GUI程序,它执行两个数的加法运行,然后显示其运算结果。
好下面开始我们的教程!一、打开和创建GUI界面1、首先打开Matlab,在Command Window中输入guide回车2、此时打开GUI编辑器GUIDE(GUI Developer的缩写)2.1 界面上有两个标签也“Creat New GUI”和“Open Existing GUI”如果创建新的GUI此时我们选择第一个标签页,但如果打开其它已经存在的GUI 就点击第二个标签吧2.2 这里我们选择第一个标签下的“Blank GUI”(空白GUI),下面还有几个系统GUI模版,你可以根据需要选择其它的。
2.3 点击“OK”我们正式进入GUIDE界面,呵呵,是不是感觉似曾相识3、添加你需要的控件到figure中在添加控件之前,您最好对您的GUI界面布局已经有一定的构思了,否则盲目性太大了不利于您的编程。
下面是我们构思的布局。
二、添加控件和设置属性在正式讲解之前,我们先讲解下GUI中的鼠标基本操作(a) 在左边的控件面板中鼠标左击选择您需要的控件,然后放开鼠标(b) 在右边的figure中按住左键,画出您的控件,于是空间就在figure上(c) 你可以用鼠标拖拽figure上所有控件,来改变他们的位置(d) 在控件上双击鼠标左键(右击是快捷菜单)可打开控件属性面板1、从上面的布局构思,我们知道本GUI需要以下控件:三个“编辑文本框”(Edit Text):三个“静态文本框”(Static Text):一个“确定按钮”(Pushbutton)按照上面介绍的鼠标操作方法,将这6个控件拖到右边的figure中,如下图所示2、接下来就是编辑这些控件的属性好,下面从Static Text开始吧,双击其中一个“静态文本块”,将跳出该控件的“属性查看器”(Property Inspector)GUI控件的几个常用属性说明如下:position:指示空间在figure中的位置font**:字体相关属性string:相当如VB中的caption,就是显示在控件上的文字tag:控件的唯一标识符,相当于ID,我们需要tag来指定某一个空间2.1 在这里我们修改它的“string”属性为“+”2.2 同理修改它的“fontsize”属性为20在编辑完这些属性后,直接点击右上角的“关闭”按钮,关闭属性查看器,此时属性会自动保存。
第七讲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 控件)。
如果没有图形用户界面(GUI)我们只能从命令行(Command Window)中调用相关程序,这相对比较繁琐,并且不是所有用户都是这个能力。
就好比计算机的 DOS 系统,在有windows的情况下,您会选择DOS吗?当然我们也不排除骨灰级的人物!在本节教程我们主要针对没有G UI 创建和使用经历的网友,但是必要的M ATLAB基础知识是需要的。
在教程中我们将创建一个简单的GUI程序,它执行两个数的加法运行,然后显示其运算结果。
一、打开和创建GUI界面1、首先打开Matlab,在Command Window中输入guide回车2、此时打开GUI编辑器GUIDE(GUI Developer的缩写)2.1 界面上有两个标签也“Creat New GUI”和“Open Existing GUI”如果创建新的GUI此时我们选择第一个标签页,但如果打开其它已经存在的GUI 就点击第二个标签吧2.2 这里我们选择第一个标签下的“Blank GUI”(空白 GUI),下面还有几个系统GUI模版,你可以根据需要选择其它的。
2.3 点击“OK”我们正式进入GUIDE界面,呵呵,是不是感觉似曾相识3、添加你需要的控件到figure中在添加控件之前,您最好对您的GUI界面布局已经有一定的构思了,否则盲目性太大了不利于您的编程。
下面是我们构思的布局。
二、添加控件和设置属性在正式讲解之前,我们先讲解下GUI中的鼠标基本操作(a) 在左边的控件面板中鼠标左击选择您需要的控件,然后放开鼠标(b) 在右边的figure中按住左键,画出您的控件,于是空间就在figure上(c) 你可以用鼠标拖拽figure上所有控件,来改变他们的位置(d) 在控件上双击鼠标左键(右击是快捷菜单)可打开控件属性面板1、从上面的布局构思,我们知道本GUI需要以下控件:三个“编辑文本框”(Edit Text):三个“静态文本框”(Static Text):一个“确定按钮”(Pushbutton)按照上面介绍的鼠标操作方法,将这6个控件拖到右边的figure中,如下图所示2、接下来就是编辑这些控件的属性好,下面从Static Text开始吧,双击其中一个“静态文本块”,将跳出该控件的“属性查看器”(Property Inspector)GUI控件的几个常用属性说明如下:position:指示空间在figure中的位置font**:字体相关属性string:相当如VB中的caption,就是显示在控件上的文字tag:控件的唯一标识符,相当于ID,我们需要tag来指定某一个空间2.1 在这里我们修改它的“string”属性为“+”2.2 同理修改它的“fontsize”属性为20在编辑完这些属性后,直接点击右上角的“关闭”按钮,关闭属性查看器,此时属性会自动保存。
在Matlab中使用GUI工具箱进行界面设计Matlab是一款功能强大的科学计算软件,它不仅可以进行数值计算和数据分析,还提供了用于图形用户界面(Graphical User Interface,简称GUI)的工具箱。
通过GUI工具箱,用户可以设计出直观、易用的界面,方便自己和他人使用和操作自己编写的程序。
GUI工具箱提供了丰富的可视化组件,如按钮、文本框、下拉菜单等,以及一系列的回调函数,使得在Matlab环境中进行GUI设计变得相对简单。
下面我将简单介绍一下在Matlab中使用GUI工具箱进行界面设计的流程和常用技巧。
首先,打开Matlab软件,创建一个新的GUI应用程序。
在Matlab命令窗口中输入"guide"命令,即可打开GUI编辑器。
在GUI编辑器中,可以选择默认的空白界面或基于模板的预设界面进行设计。
在设计界面之前,需要明确自己的需求和设计目标。
例如,设计一个简单的计算器界面,包含输入框、按钮和显示框等组件。
接下来,可以通过拖拽和放置组件等方式来设计界面。
在GUI编辑器的左侧可以看到工具箱,其中包含了各种可用的界面组件。
不同组件有不同的属性,可以通过调整属性值来实现个性化的设计。
例如,我们可以在界面上放置一个输入框组件,用于用户输入计算器的操作数。
在属性编辑器中,可以设置输入框的位置、大小、默认值等属性。
同样地,我们可以在界面上放置一个按钮组件,用于用户点击进行计算。
在属性编辑器中,可以设置按钮的文本、位置、大小等属性。
在设计完界面之后,需要为按钮组件添加回调函数,以响应用户的操作。
回调函数是一种特殊的函数,当用户与界面交互时会被调用。
回调函数可以通过访问界面上的组件来获取用户输入的数据,并进行相应的计算和操作。
在Matlab中,可以通过编辑按钮的"Callback"属性来设置回调函数。
例如,我们可以为计算按钮添加如下的回调函数:function calculateButton_Callback(hObject, eventdata, handles)operand = str2double(get(handles.inputBox, 'String'));result = calculate(operand);set(handles.outputBox, 'String', num2str(result));上述回调函数中,首先通过获取输入框组件的字符串,将用户输入的操作数转换为浮点数。
学习本教程的目的:学会用matlab gui设计用户界面,并编写响应程序。
一、GUI基础知识图形用户界面(Graphical User Interfaces ,GUI )则是由窗口、光标、按键、菜单、文字说明等对象(Objects)构成的一个用户界面。
用户通过一定的方法(如鼠标或键盘)选择、激活这些图形对象,使计算机产生某种动作或变化,比如实现计算、绘图等。
Matlab中设计图形用户界面的方法有两种:使用可视化的界面环境和通过编写程序。
本教程主要通过使用可视化的界面环境来实现GUI界面的设计启动matlab的GUI界面在matlab主界面的菜单栏File中New下的GUI,如图1所示图1单击GUI后会出现如图2界面图2Matlab为GUI设计一共准备了4种模板,分别是:◆Blank GUI(Default)(空白模板,默认);◆GUI with Uicontrols(带控件对象的GUI模板);◆GUI with Axes and Menu(带坐标轴与菜单的GUI模板);◆Modal Question Dialog(带模式问题对话框的GUI模板)。
我们入门时经常会使用第一个模板,即Blank GUI(空白模板)。
单击图2中的ok会出现下图界面(图3)图3图形用户界面GUI设计窗口由菜单栏、工具栏、控件工具栏以及图形对象设计区等4个功能区组成。
菜单栏:GUI设计窗口的菜单栏有File、Edit、View、Layout、Tools和Help 6个菜单项,使用其中的命令可以完成图形用户界面的设计操作。
工具栏:编辑工具在菜单栏的下方,提供了“编程”时常用的工具,例如可以进行保存、撤销、运行等等操作。
控件工具栏:各个模块位于窗口的左半部分,提供了设计GUI 过程中所用的用户控件;了解各个模块(用户控件)的用途和作用对GUI的设计起到比较大的作用。
图形对象设计区:该区域是网格形式的用户设计GUI的空白区域,可以把用户控件做到区域里。
MATLAB GU入门实例详解,让你轻松掌握GUI Matlab实例讲解本文档通过一个简单的实例让你学会matlab GUI的制作流程。
首先,图形用户界面GUI(Graphical User In terfaces) 是一种用户和计算机进行信息交流的工具和方法,由各种图形对象组成。
在这种用户界面下,用户的命令和对程序的控制是通过鼠标等输入设备“选择”各种图形对象来实现的。
开发者只需在由软件开发工具自动生成的程序代码中添加自己的运算或控制代码,就可以完成应用程序的设计。
例建立加法计算器程序步骤:1(新建一个GUI文件:选择Blank GUI(Default) 2( 进入GUI开发环境以后添加两个编辑文本框,6个静态文本框,和一个按钮,布置如下图所示;(+ = 数据1绿色显示框等都是静态文本框)布置好各控件以后,就可以来为这些控件编写程序来实现两数相加的功能了■f Jx f □1*5阖backb one. County sta nding whe n Lieute nant, guerrilla activity beh ind en emy lines in the water zone of Wujia ng County border. I n early 1940,Chang Shen Liq un sectors Yu Qin gzhi is appo in ted to three district and three en emy Guard Capta in. Yu assumed office, the positive inno vati on gover nan ce, establishi ng in formati on line, master puppet performa nee. Three3(为数据1文本框添加代码点击上图所示红色方框,选择edit1_Callback,光标便立刻移到下面这段代码的位置。
图形用户界面(GUI )制作用户界面(或接口)是指:人与机器(或程序)之间交互作用的工具和方法。
如键盘、鼠标、跟踪球、话筒都可成为与计算机交换信息的接口。
图形用户界面(Graphical User Interfaces ,GUI )则是由窗口、光标、按键、菜单、文字说明等对象(Objects )构成的一个用户界面。
用户通过一定的方法(如鼠标或键盘)选择、激活这些图形对象,使计算机产生某种动作或变化,比如实现计算、绘图等。
假如读者所从事的数据分析、解方程、计算结果可视工作比较单一,那么一般不会考虑GUI 的制作。
但是如果读者想向别人提供应用程序,想进行某种技术、方法的演示,想制作一个供反复使用且操作简单的专用工具,那么图形用户界面也许是最好的选择之一。
MATLAB 为表现其基本功能而设计的演示程序demo 是使用图形界面的最好范例。
MATLAB 的用户,在指令窗中运行demo 打开那图形界面后,只要用鼠标进行选择和点击,就可浏览那丰富多彩的内容。
即便比较熟悉MATLAB 的读者,在他初次编写GUI 程序时,也会感到棘手。
为使读者获得制作自己GUI 的体验,本章“入门”节提供了一个简单的示例。
读者只要输入所提供的程序,就可引出相应的界面。
本章第2节叙述图形用户界面的设计原则和一般制作步骤。
第3、4节分别介绍用户菜单、用户控件的制作。
出于“由浅入深”的考虑,前4节制作GUI 是通过M 脚本文件实现的。
利用M 函数文件制作GUI ,需要解决数据传递问题,为此专设第5节给予阐述和示例。
MATLAB 5.x 版为方便用户制作图形界面,提供了一个交互式的设计工具guide 。
关于该工具的使用方法,被放在第6节中,以一个综合例题为设计目标逐步展开。
在此提醒读者,假如要比较准确的理解本章程序和掌握本章内容,请先阅读第10章关于图柄的内容。
11.1 入门【*例11.1-1】对于传递函数为1212++=s s G ζ的归一化二阶系统,制作一个能绘制该系统单位阶跃响应的图形用户界面。
GUI指导教程系列(1):GUI入门基本操作为什么在MATLAB中要使用GUI呢?其实GUI就是Matlab中的Visual Basic,是面向对象的编程,可以使Matlab程序的终端用户,即使不懂的Matlab也可以轻易操作该程序!如果没有图形用户界面(GUI)我们只能从命令行(Command Window)中调用相关程序,这相对比较繁琐,并且不是所有用户都是这个能力。
就好比计算机的DOS 系统,在有windows的情况下,您会选择DOS吗?当然我们也不排除骨灰级的人物!在本节教程我们主要针对没有GUI创建和使用经历的网友,但是必要的MATLAB 基础知识是需要的。
在教程中我们将创建一个简单的GUI程序,它执行两个数的加法运行,然后显示其运算结果。
好下面开始我们的教程!一、打开和创建GUI界面1、首先打开Matlab,在Command Window中输入guide回车2、此时打开GUI编辑器GUIDE(GUI Developer的缩写)2.1 界面上有两个标签也“Creat New GUI”和“Open Existing GUI”如果创建新的GUI此时我们选择第一个标签页,但如果打开其它已经存在的GUI 就点击第二个标签吧2.2 这里我们选择第一个标签下的“Blank GUI”(空白GUI),下面还有几个系统GUI模版,你可以根据需要选择其它的。
2.3 点击“OK”我们正式进入GUIDE界面,呵呵,是不是感觉似曾相识3、添加你需要的控件到figure中在添加控件之前,您最好对您的GUI界面布局已经有一定的构思了,否则盲目性太大了不利于您的编程。
下面是我们构思的布局。
二、添加控件和设置属性在正式讲解之前,我们先讲解下GUI中的鼠标基本操作(a) 在左边的控件面板中鼠标左击选择您需要的控件,然后放开鼠标(b) 在右边的figure中按住左键,画出您的控件,于是空间就在figure上(c) 你可以用鼠标拖拽figure上所有控件,来改变他们的位置(d) 在控件上双击鼠标左键(右击是快捷菜单)可打开控件属性面板1、从上面的布局构思,我们知道本GUI需要以下控件:三个“编辑文本框”(Edit Text):三个“静态文本框”(Static Text):一个“确定按钮”(Pushbutton)按照上面介绍的鼠标操作方法,将这6个控件拖到右边的figure中,如下图所示2、接下来就是编辑这些控件的属性好,下面从Static Text开始吧,双击其中一个“静态文本块”,将跳出该控件的“属性查看器”(Property Inspector)GUI控件的几个常用属性说明如下:position:指示空间在figure中的位置font**:字体相关属性string:相当如VB中的caption,就是显示在控件上的文字tag:控件的唯一标识符,相当于ID,我们需要tag来指定某一个空间2.1 在这里我们修改它的“string”属性为“+”2.2 同理修改它的“fontsize”属性为20在编辑完这些属性后,直接点击右上角的“关闭”按钮,关闭属性查看器,此时属性会自动保存。
回到GUIDE,如果控件上的文字被部分隐盖,此时可以通过鼠标拖拽改变控件的大小。
二、添加控件和设置属性在正式讲解之前,我们先讲解下GUI中的鼠标基本操作(a) 在左边的控件面板中鼠标左击选择您需要的控件,然后放开鼠标(b) 在右边的figure中按住左键,画出您的控件,于是空间就在figure上(c) 你可以用鼠标拖拽figure上所有控件,来改变他们的位置(d) 在控件上双击鼠标左键(右击是快捷菜单)可打开控件属性面板1、从上面的布局构思,我们知道本GUI需要以下控件:三个“编辑文本框”(Edit Text):三个“静态文本框”(Static Text):一个“确定按钮”(Pushbutton)按照上面介绍的鼠标操作方法,将这6个控件拖到右边的figure中,如下图所示2、接下来就是编辑这些控件的属性好,下面从Static Text开始吧,双击其中一个“静态文本块”,将跳出该控件的“属性查看器”(Property Inspector)GUI控件的几个常用属性说明如下:position:指示空间在figure中的位置font**:字体相关属性string:相当如VB中的caption,就是显示在控件上的文字tag:控件的唯一标识符,相当于ID,我们需要tag来指定某一个空间2.1 在这里我们修改它的“string”属性为“+”2.2 同理修改它的“fontsize”属性为20在编辑完这些属性后,直接点击右上角的“关闭”按钮,关闭属性查看器,此时属性会自动保存。
回到GUIDE,如果控件上的文字被部分隐盖,此时可以通过鼠标拖拽改变控件的大小2.3 重复上面的操作(1)将第二个“Static Text”的“string”改为“=”,“fontsize”为20(2)第三个“Static Text”的“string”改为“My Adder GUI”,“fontsize”为20于是,我们将得到如下所示的GUI界面2.4 下面双击Edit Text,修改编辑文本框的属性(1)第一个“Edit Text”的用来存储第一个加数,我们将“string”改为“0”,“tag”改为“input1_editText”(2)第二个“Edit Text”的用来存储第二个加数,我们将“string”改为“0”,“tag”改为“input2_editText”(3)第三个“Edit Text”的“string”改为“0”,“tag”为“answer_stat ic Text”2.5 修改Pushbutton按钮的属性,“string”改为“Add!”,“tag”改为“a dd_pushbutton”再次预览下我们现在得到的GUI界面3、重新布局和移动控件位置,使其美观将上面编辑完的GUI程序保存为myAdder,此时在当前目录下,Matlab将自动生成如下来个两个文件myAdder.m和myAdder.fig。
.fig文件包含了程序的图形用户界面,.m文中包含了GUI所需的回调函数和其他必须代码。
三、书写GUI回调函数(callback)代码在保存GUI程序时,Matlab会自动生成.fig和.m文件,其中的.m就是我们现在要操作的对象。
我们就是M文件中添加控件的回调函数相应用户的操作!这也是GUI编程的核心内容,它要求你必须掌握Matlab基本编程以及图形句柄语句!打开.m文件,发现里面有很多function的代码,看得我们眼花缭乱,呵呵,不要胆怯!本教程是初级教程,我们只涉及里面的callback,其他的我们可以暂时置之不理!至于其它的我们以后的教程中对做相关介绍!在正式讲解之前,一个小使用技巧,Matlab Editor(代码编辑器)工具栏显示函数按钮,可以让我们快速跳转我们需要的函数位置!这个在.m内容很多的时候很有用哦!1、在Editor中工具栏的函数Show Function中选择input1_editText_Callbac k或者右击tag为input1_editText的编辑文本框,View Callback→Callback2、此时光标会跳转到.m文件的function input1_editText_Callback处,方便我们直接编辑1.function input1_editText_Callback(hObject, eventdata, handles)2.% hObject handle to input1_editText (see GCBO)3.% eventdata reserved - to be defined in a future version ofMATLAB4.% handles structure with handles and user data (see GUIDATA)5.6.% Hint: get(hObject,'String') returns contents of input1_editText as text7.% str2double(get(hObject,'String')) returns contents of8.% input1_editText as a double复制代码在上面代码下添加如下MATLAB代码1.% handles 包含figure中所有图形对象句柄的结构体,如果我们想引用tag为mytag的控件,使用handles.mytag2.% set/get 函数是用来设置/获取某个控件属性3.% 使用get命令获取第一个加数,并将它转换成数值4.input = str2num(get(hObject,'String')); % string属性是字符串,所以必须转换成数值5.6.% 检验输入是否为空,是则将它置为07.if (isempty(input))8.set(hObject,'String','0')9.end10.11.% 保存handles结构体,只要在handles结构体有改变时,才需要保存12.guidata(hObject, handles); % 这里由于handles没有改变,故这里其实没有必要,但是为了避免潜在的不必要麻烦,建议在所有Callback最后都添加该命令复制代码3、为input2_editText_Callback添加完全相同的代码4、编辑add_pushbutton_Callback回调函数,使用上面提到的方法,将光标定位到1.% --- Executes on button press in add_pushbutton.2.function add_pushbutton_Callback(hObject, eventdata, handles)3.% hObject handle to add_pushbutton (see GCBO)4.% eventdata reserved - to be defined in a future version ofMATLAB5.% handles structure with handles and user data (see GUIDATA)复制代码在后面我们添加上如下代码1. a = get(handles.input1_editText,'String');2. b = get(handles.input2_editText,'String');3.% a和b是字符串变量,我们需要使用str2double函数将其转换为数值4.% 然后才能相加,否则字符串是没法相加的5.total = str2num(a) + str2num(b); % 格式转换,转换为数值6.% 由于string属性是字符串,所以必须将两个数的和转换为字符串7. c = num2str(total); % 转换为字符串8.% 将结果赋值给answer_staticText空间的string属性,于是就可以显示结果了9.set(handles.answer_staticText,'String',c);10.guidata(hObject, handles); % 更新结构体复制代码恭喜您,到此为此这个GUI程序就完成了!接下来就可以运行和演示它了!有一个小技巧要告诉大家的,如果您在第一次保存GUI程序时,不想让Matlab 为每一个callback回调函数自动生成注释文本,可以如下操作:File→Prefer ences...如果不想让Matlab自动生成fig文件,而只是生成M文件,可以如下操作:To ols→GUI Option四、GUI程序打开、运行和发布1、想在GUIDE中打开一个写好的GUI程序,可有两种方法1.1 如上面所说的,在打开GUIDE界面时,我们可以选择“Open Existing GUI”,然后选中你需要打开的GUI程序1.2 直接在Current Directory选中*.fig文件,然后右击选择“Open In GUID E”2、运行编辑好的GUI程序方法主要有三种方法2.1 点击GUIDE工具栏的run按钮,如下图所示2.2 从Command Window命令行运行,首先将MATLAB当前目录切换到*.fig和*. m文件所在目录(两个必须同在当前目录或者都在搜索路径下)接着在Command Window中输入GUI的文件名(不需要扩展名)myAdder,然后回车2.3 直接在Current Directory中选中myAdder.m,右击选择“Run File”即可通过上面三种方法中任意一种,GUI程序将开始运行,并显示如下3、执行GUI程序功能在两个文本框中输入分别输入两个加数,然后点击Add!按钮,此时和将显示在“=”右边的文本框中!。