第7章 Matlab的图形用户界面GUI
利用Matlab的图形用户界面(GUI)功能,设计并实现实验主界面
![利用Matlab的图形用户界面(GUI)功能,设计并实现实验主界面](https://img.taocdn.com/s3/m/4da6364369eae009581becaa.png)
(1)利用Matlab的图形用户界面(GUI)功能,设计并实现实验主界面;(2) 实现在“符号计算”图形用户界面中的各项符号计算功能,如实现Matlab的求极限、求导、求不定积分与定积分、级数求和、方程组的符号求解、常微分方程的符号求解等符号计算;(3) 利用Matlab的二维、三维绘图功能,实现图形用户界面(GUI)中的部分符号计算的可视化,即给出符号计算实例的同时实现该实例的图形化描述。
如下图给出了一个简单的GUI界面,学生可以参考如下图设计出自己的GUI界面。
程序如下:hf=figure('Position',[200,200,700,500],...'Name','信计08(2)班阿卜杜热黑木20080803417', ...'NumberTitle','off','MenuBar','none');uicontrol(hf,'Style','Frame','Position',[0,0.15,0.45,1],...'Units','normalized','Back',[0,1,1]);COMM1=['n=str2num(get(he1,''String''));', ...%求导连接'b=sym(get(he7,''String''));',...'dec=diff(b,n);', ...'set(he8,''string'',char(dec));'];COMM2=['a=str2num(get(he2,''String''));', ...%求极限连接'f=sym(get(he7,''String''));',...'lim=limit(f,a);', ...'set(he8,''string'',char(lim));'];COMM3=['g=sym(get(he7,''String''));',... %不定积分连接'int_1=int(g);', ...'set(he8,''string'',char(int_1));'];COMM4=['a=str2num(get(he3,''String''));', ... %级数求和连接'b=str2num(get(he5,''String''));', ...'f=sym(get(he7,''String''));',...'sum_1=symsum(f,a,b);', ...'set(he8,''string'',char(sum_1));'];COMM5=['a=str2num(get(he4,''String''));', ... %定积分连接'b=str2num(get(he6,''String''));', ...'f=sym(get(he7,''String''));',...'int_2=int(f,a,b);', ...'set(he8,''string'',char(int_2));'];COMM6=['f=get(he7,''String'');',...'dsolve_1=dsolve(f,''x'');', ...'set(he8,''string'',char(dsolve_1));'];COMM7=['f=get(he7,''String'');',...'ezplot(f);'];COMM8=['g=get(he8,''String'');',...'ezplot(g);'];uicontrol(hf,'Style','Push','Position',[0.02,0.9,0.11,0.06],...'String','求导','Units','normalized','Call',COMM1); uicontrol(hf,'Style','Text','Position',[0.17,0.85,0.08,0.1],...'Units','normalized','Horizontal','center',...'String','阶数','Back',[0,1,1]);he1=uicontrol(hf,'Style','Edit','Position',[0.25,0.9,0.15,0.06],...'Units','normalized','Back',[0,1,0]);uicontrol(hf,'Style','Push','Position',[0.02,0.72,0.13,0.06],...'String','求极限','Units','normalized','Call',COMM2);uicontrol(hf,'Style','Text','Position',[0.17,0.67,0.08,0.1],...'Units','normalized','Horizontal','center',...'String','极限点','Back',[0,1,1]);he2=uicontrol(hf,'Style','Edit','Position',[0.25,0.72,0.15,0.06],...'Units','normalized','Back',[0,1,0]);uicontrol(hf,'Style','Push','Position',[0.02,0.58,0.13,0.06],...'String','不定积分','Units','normalized','Call',COMM3);uicontrol(hf,'Style','Push','Position',[0.02,0.45,0.13,0.06],...'String','级数求和','Units','normalized','Call',COMM4);uicontrol(hf,'Style','Text','Position',[0.31,0.44,0.06,0.06],...'Units','normalized','Horizontal','center',...'String','上限','Back',[0,1,1]);he5=uicontrol(hf,'Style','Edit','Position',[0.38,0.45,0.06,0.06],...'Units','normalized','Back',[0,1,0]);uicontrol(hf,'Style','Text','Position',[0.17,0.44,0.06,0.06],...'Units','normalized','Horizontal','center',...'String','下限','Back',[0,1,1]);he3=uicontrol(hf,'Style','Edit','Position',[0.24,0.45,0.06,0.06],...'Units','normalized','Back',[0,1,0]);uicontrol(hf,'Style','Push','Position',[0.02,0.32,0.13,0.06],...'String','求定积分','Units','normalized','Call',COMM5);uicontrol(hf,'Style','Text','Position',[0.31,0.31,0.06,0.06],...'Units','normalized','Horizontal','center',...'String','上限','Back',[0,1,1]);he6=uicontrol(hf,'Style','Edit','Position',[0.38,0.32,0.06,0.06],...'Units','normalized','Back',[0,1,0]);uicontrol(hf,'Style','Text','Position',[0.17,0.3,0.08,0.06],...'Units','normalized','Horizontal','center',...'String','下限','Back',[0,1,1]);he4=uicontrol(hf,'Style','Edit','Position',[0.24,0.32,0.06,0.06],...'Units','normalized','Back',[0,1,0]);uicontrol(hf,'Style','Push','Position',[0.02,0.2,0.16,0.06],...'String','解微分方程','Units','normalized','Call',COMM6);uicontrol(hf,'Style','text','Position',[0.48,0.9,0.13,0.06],...'String','原函数','Units','normalized');he7=uicontrol(hf,'Style','edit','Position',[0.65,0.9,0.30,0.06],...'String','','Units','normalized','Back',[0,1,0]);uicontrol(hf,'Style','text','Position',[0.48,0.77,0.13,0.06],...'String','结果函数','Units','normalized');he8=uicontrol(hf,'Style','text','Position',[0.65,0.77,0.30,0.06],...'String','','Units','normalized','Back',[0,1,0]);h_axes=axes('position',[0.55,0.2,0.4,0.5]);uicontrol(hf,'Style','push','Position',[0.58,0.02,0.13,0.06],...'String','初始绘图','Units','normalized','call',COMM7);uicontrol(hf,'Style','push','Position',[0.80,0.02,0.13,0.06],...'String','结果绘图','Units','normalized','call',COMM8);uicontrol(hf,'Style','Push','Position',[0.02,0.02,0.08,0.06],...'String','退出','Units','normalized','Call', 'close');。
MATLAB-图形用户界面 GUI
![MATLAB-图形用户界面 GUI](https://img.taocdn.com/s3/m/e6b83bc24afe04a1b171de26.png)
第 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 控件创建及应用示例本小节仍以算例为依托,详细讲述用户界面的创建步骤和注意要点。
matlab gui教程
![matlab gui教程](https://img.taocdn.com/s3/m/8a5200fbf90f76c661371a8a.png)
什么是GUI呢? GUI是Graphical User Interface 图形用户界面的意思,象很多高级编程语言一样,Matlab也有图形用户界面开发环境,随着计算机技术的飞速发展,人与计算机的通信方式也发生的很大的变化,从原来的命令行通讯方式(例如很早的DOS系统)变化到了现在的图形界面下的交互方式,而现在绝大多数的应用程序都是在图形化用户界面下运行的。
记得读书的时候,大学开学不久,学校很多同学就开始报考全国计算机等级考试了,当然我也是其中的一分子,其中C语言是大多数人选择的科目,当时在学C语言的时候,经常也会遇到人机交互的例子,譬如一个计算两个数相加的程序,运行程序后便切换到了Dos模式,然后在此模式下输入两个数,再回车,才能返回运算结果。
当时就觉得很不方便,也不友好,后来才得知C语言是面向过程的语言,是非面向对象的语言(VC++,VB,Matlab等是面向对象的)。
那么下面我们就来看看Matlab是如何简单、快速而友好地解决这类问题的吧。
Matlab GUI编程教程(适用于初学者)1.首先我们新建一个GUI文件:File/New/GUI 如下图所示;选择Blank GUI(Default)2.进入GUI开发环境以后添加两个编辑文本框,6个静态文本框,和一个按钮,布置如下图所示;布置好各控件以后,我们就可以来为这些控件编写程序来实现两数相加的功能了。
3.我们先为数据1文本框添加代码;点击上图所示红色方框,选择edit1_Callback,光标便立刻移到下面这段代码的位置。
function edit1_Callback(hObject, eventdata, handles)% hObject handle to edit1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hints: get(hObject,'String') returns contents of edit1 as text% str2double(get(hObject,'String')) returns contents of edit1 as a double然后在上面这段代码的下面插入如下代码:%以字符串的形式来存储数据文本框1的内容. 如果字符串不是数字,则现实空白内容input = str2num(get(hObject,'String'));%检查输入是否为空. 如果为空,则默认显示为0if(isempty(input))set(hObject,'String','0')endguidata(hObject, handles);这段代码使得输入被严格限制,我们不能试图输入一个非数字。
matlabGUI人机用户界面设计[6]
![matlabGUI人机用户界面设计[6]](https://img.taocdn.com/s3/m/3717f23424c52cc58bd63186bceb19e8b8f6ec99.png)
图7-18 对齐工具对话框
在界面之中还需要创建菜单,创建菜单能够经过菜单编辑器完毕。单击工具栏上旳菜单编辑器按钮,能够打开菜单编辑器对话框,在对话框中单击创建新菜单按钮,则能够创建新旳菜单,设置菜单属性如图7-20所示。
以空白界面类型为例,单击“OK”按钮,这时MATLAB将开启GUIDE旳图形界面,如图所示。
图 具有空白界面旳GUIDE图形界面
在GUIDE界面旳左侧为MATLAB旳控件面板,控件面板包括了能够在画布上绘制旳图形控件: (Push Button)、单项选择按钮(Toggle Button)、单项选择框(Radio Button)、复选框(Checkbox)、文本框(Edit Text)、静态文本框(Static Text)、滚动条(Slider)、组别框(Frame)、列表框(Listbox)、下拉框(Popup Menu)和坐标轴(Axes)。
2.1 GUIDE工具入门
使用图形句柄创建GUI旳过程繁琐,而且在程序编写好之前,顾客图形界面是不可见旳。所觉得了便于创建图形顾客界面,MATLAB提供了一种开发环境,能够帮助顾客创建图形顾客界面,这就是GUIDE——Graphic User Interface Development Environment。 在MATLAB中开启GUIDE旳措施: >>guide或者经过“Start”菜单项选择择“MATLAB”下旳“GUIDE”命令。
这时,将直接开启GUIDE Quick Start窗体,在这个窗体中,能够初步选择图形顾客界面旳类型,如图所示。
图 GUIDE旳迅速开启界面
在迅速开启界面中,能够选择四种类型旳新建界面:* 空白界面(Black GUI)。* 具有图形控件旳界面(GUI With Uicontrols)。* 具有菜单和坐标轴旳界面(GUI With Axes and Menu)。* 模式对话框(Modal Question Dialog)。
第七讲MATLAB图形用户界面(GUI)设计
![第七讲MATLAB图形用户界面(GUI)设计](https://img.taocdn.com/s3/m/2bd4ac2242323968011ca300a6c30c225901f064.png)
第七讲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在图形用户中的应用](https://img.taocdn.com/s3/m/6c354892daef5ef7ba0d3cc2.png)
图形结果
第二节 快捷菜单
快捷菜单是用鼠标右键单击某对象时在屏幕 快捷菜单是用鼠标右键单击某对象时在屏幕 上弹出的菜单; 上弹出的菜单; 这种菜单的位置是不固定的,而且总是和某个 这种菜单的位置是不固定的, 图形对象相联系。 图形对象相联系。
思考:常规菜单与快捷菜单的区别?? 思考:常规菜单与快捷菜单的区别??
第二节 快捷菜单
具体步骤: 具体步骤
利用uicontextmenu函数建立快捷菜单 函数建立快捷菜单 利用 快捷菜单句柄= 快捷菜单句柄 uicontextmenu 利用uimenu函数为快捷菜单建立菜单项 函数为快捷菜单建立菜单项 利用 uimenu(快捷菜单句柄,……………) 快捷菜单句柄, 快捷菜单句柄 利用set函数将快捷菜单和图形对象相联系 利用 函数将快捷菜单和图形对象相联系 set(图形句柄 图形句柄,'UIContextMenu',快捷菜单句柄 快捷菜单句柄) 图形句柄 快捷菜单句柄
第一节 菜单设计
MATLAB用户菜单对象是图形窗口的子对象,故菜单设 用户菜单对象是图形窗口的子对象, 用户菜单对象是图形窗口的子对象 计总在某个图形窗口重进行 图形窗口有自己的菜单,需将其进行屏障,把MenuBar 图形窗口有自己的菜单,需将其进行屏障, 菜单 属性设置为none,然后再建立用户自己的菜单 属性设置为 ,
第一节 菜单设计
例如:在当前图形窗口菜单条中建立名为File的 例如:在当前图形窗口菜单条中建立名为 的 菜单项,并在其下建立Save和Save As两个 菜单项,并在其下建立 和 两个 子菜单项。 子菜单项。
hm = uimenu(gcf,’label’,’File’); hm1=uimenu(hm,’label’,’Save’); hm2=uimenu(hm,’label’,’Save As’);
利用Matlab的图形用户界面(GUI)功能,设计与实现实验.
![利用Matlab的图形用户界面(GUI)功能,设计与实现实验.](https://img.taocdn.com/s3/m/33338546650e52ea551898ce.png)
(1 利用Matlab 的图形用户界面(GUI )功能,设计与实现实验主界面;(2 实现在“数值计算”图形用户界面中的各项数值计算,如实现Matlab 的线性方程组的求解、数据统计与分析、数值插值、曲线拟合、常微分方程的数值求解等数值计算;(3 利用Matlab 的二维、三维绘图功能,实现图形用户界面(GUI )中的数值计算的可视化,即给出数值计算实例的同时实现该实例的图形化描述。
如下图给出了一个简单的GUI 界面,学生可以参考如下图设计出自己的GUI 界面。
figure('Color' ,[1,1,1],'Position' ,[100,100,700,600],...'Name' , '' , ...'NumberTitle' , 'off' , 'MenuBar' , 'none' ;uicontrol('Style' , 'Frame' , 'Position' ,[0,0.08,0.45,1],...'Units' , 'normalized' , 'Back' ,[0,1,1];XIANQIU=['a=str2num(get(xishu,''String'';', ...'b=str2num(get(changshu,''String'';', ...'b=b'';x=a\b;', ...'set(jieguo,''string'',x;'];uicontrol('Style' , 'Push' , 'Position' ,[0.02,0.92,0.20,0.06],...'String' , 'ÏßÐÔ·½³Ì×éÇó½â', 'Units' , 'normalized' , 'Call' ,XIANQIU;uicontrol('Style' , 'Text' , 'Position' ,[0.01,0.83,0.1,0.05],... 'Units' , 'normalized' , 'Horizontal' , 'center' , ...'String' , 'ϵÊý¾ØÕó', 'Back' ,[0,1,1];xishu=uicontrol('Style' , 'Edit' , 'Position' ,[0.16,0.83,0.25,0.06],... 'Units' ,'normalized' , 'Back' ,[0,1,0];uicontrol('Style' , 'Text' , 'Position' ,[0.01,0.72,0.1,0.05],... 'Units' , 'normalized' , 'Horizontal' , 'center' , ...'String' , '³£ÊýÏî¾ØÕó', 'Back' ,[0,1,1];changshu=uicontrol('Style' , 'Edit' , 'Position' ,[0.16,0.72,0.25,0.06],.. .'Units' , 'normalized' , 'Back' ,[0,1,0];uicontrol('Style' , 'Push' , 'Position' ,[0.02,0.63,0.20,0.06],... 'String' ,'Êýֵͳ¼ÆÓë·ÖÎö';uicontrol('Style' , 'Text' , 'Position' ,[0.23,0.63,0.2,0.05],... 'Units' , 'normalized' , 'Horizontal' , 'center' , ...'String' , 'ÔÚϵÊý¾ØÕóÊäÈë¿òÖÐÊäÈëÒª·ÖÎöµÄ¾ØÕó', 'Back' ,[0,1,1];uicontrol('Style' , 'Push' , 'Position' ,[0.06,0.55,0.1,0.05],... 'String' , 'ÊýÖµ²åÖµ';uicontrol('Style' , 'Push' , 'Position' ,[0.22,0.55,0.1,0.05],... 'String' , 'ÇúÏßÄâºÏ';uicontrol('Style' , 'Text' , 'Position' ,[0.005,0.45,0.05,0.05],... 'Units' , 'normalized' , 'Horizontal' , 'center' , ...'String' , 'X' , 'Back' ,[0,1,1];chazhi=uicontrol('Style' , 'Edit' , 'Position' ,[0.05,0.45,0.15,0.06],... 'Units' ,'normalized' , 'Back' ,[0,1,0];uicontrol('Style' , 'Text' , 'Position' ,[0.2,0.45,0.05,0.05],... 'Units' , 'normalized' , 'Horizontal' , 'center' , ...'String' , 'Y' , 'Back' ,[0,1,1];nihe=uicontrol('Style' , 'Edit' , 'Position' ,[0.25,0.45,0.15,0.06],... 'Units' ,'normalized' , 'Back' ,[0,1,0];XIANXING=['s=(get(changwei,''String'';', ...'c=(get(tiaojian,''String'';', ...'c_f=dsolve(''s'',''b'',''x'';', ...'set(jieguo,''string'',char(c_f;'];uicontrol('Style' , 'Push' , 'Position' ,[0.02,0.35,0.25,0.06],...'String' , '³£Î¢·Ö·½³ÌÊýÖµÇó½â', 'Units' , 'normalized' , 'Call' ,XIANXING;chengwei=uicontrol('Style' , 'Edit' , 'Position' ,[0.16,0.25,0.25,0.06],.. .'Units' , 'normalized' , 'Back' ,[0,1,0];uicontrol('Style' , 'Text' , 'Position' ,[0.01,0.25,0.1,0.05],... 'Units' , 'normalized' ,'Horizontal' , 'center' , ...'String' , '΢·Ö·½³Ì', 'Back' ,[0,1,1];tiaojian=uicontrol('Style' , 'Edit' , 'Position' ,[0.16,0.15,0.25,0.06],.. .'Units' , 'normalized' , 'Back' ,[0,1,0];uicontrol('Style' , 'Text' , 'Position' ,[0.01,0.15,0.1,0.05],... 'Units' , 'normalized' ,'Horizontal' , 'center' , ...'String' , '³õÖµÌõ¼þ', 'Back' ,[0,1,1];h_axes=axes('position' ,[0.5,0.15,0.4,0.4];jieguo=uicontrol('Style' , 'text' , 'Position' ,[0.5,0.6,0.45,0.25],... 'Units' , 'normalized' , 'Back' ,[0,1,0];uicontrol('Style' , 'Text' , 'Position' ,[0.6,0.85,0.3,0.1],... 'Units' , 'normalized' ,'Horizontal' , 'center' , ...'String' , '½á¹û', 'Back' ,[1,1,1],'FontSize' ,35;uicontrol('Style' , 'Push' , 'Position' ,[0.018,0.02,0.08,0.05],... 'String' , 'Í˳ö', 'Units' , 'normalized' , 'Call' , 'close' ;uicontrol('Style' , 'Push' , 'Position' ,[0.65,0.025,0.08,0.05],...'String' , '°¡Êµ´òʵ', 'Units' , 'normalized' , 'Call' , '»æͼº¯Êý°´Å¥';。
matlab gui教程
![matlab gui教程](https://img.taocdn.com/s3/m/9069dd6ff11dc281e53a580216fc700abb6852bf.png)
matlab gui教程MATLAB(Matrix Laboratory)是一种用于数值计算和科学工程的高级编程语言和环境。
MATLAB具有强大的数值计算能力和丰富的函数库,广泛应用于各个领域,包括工程、科学、经济、金融等。
MATLAB的GUI(Graphical User Interface)编程是一种通过可视化界面与用户进行交互的编程方式。
GUI程序的开发可以使用户更加方便地使用MATLAB的各种功能,并且可以增加程序的易用性和可读性。
在MATLAB中,GUI程序的开发是通过GUIDE(Graphical User Interface Development Environment)工具完成的。
GUIDE 是MATLAB自带的一种可视化设计工具,它可以帮助用户快速实现GUI的设计和布局,并且可以自动生成相应的代码。
通过GUIDE,用户可以将各种用户界面元素(如按钮、文本框、滑动条等)拖放到GUI窗口中,并进行相应的属性设置和回调函数的编写。
回调函数是指当用户进行操作时触发的响应函数,用于实现用户与程序的交互。
GUI程序的开发通常包括以下几个步骤:1. 创建GUI窗口:在MATLAB中,可以通过调用`figure`函数来创建GUI窗口,也可以直接使用GUIDE工具来设计和布局GUI窗口。
2. 添加用户界面元素:通过GUIDE工具或手动编写代码的方式,向GUI窗口添加各种用户界面元素,如按钮、文本框、滑动条等,并进行相应的属性设置。
3. 编写回调函数:为各个用户界面元素添加回调函数,用于实现用户与程序的交互。
可以通过GUIDE工具自动生成回调函数的代码,也可以手动编写回调函数。
4. 实现功能代码:根据用户界面元素的触发,编写相应的功能代码,实现程序的具体功能。
5. 调试和优化:测试GUI程序的各个功能,并进行必要的调试和优化,以确保程序的正常运行和良好的用户体验。
总的来说,MATLAB的GUI是一种非常强大和灵活的编程方式,可以方便实现用户与程序的交互、提高程序的易用性和可读性。
MATLAB讲稿 图形用户界面设计(GUI)
![MATLAB讲稿 图形用户界面设计(GUI)](https://img.taocdn.com/s3/m/bb3b38f4c8d376eeaeaa311d.png)
②
使用属性查看器(Using Property Inspector) 布置控件; 定义文本框的属性; 定义坐标轴的属性; 定义按钮的属性; 定义复选框。
4. 菜单编辑器(Menu Editor) 利用菜单编辑器,可以创建、设置、修改下拉式菜单和 快捷菜单。选择 Tools 菜单下的 Menu Editor...子菜单,即 可打开菜单编辑器。
3. 用属性查看器设置控件属性 利用对象属性查看器,可以查看每个对象的属性值,也 可以修改、设置对象的属性值。 ① 打开属性查看器(Opening Property Inspector)
对象属性查看器的打开方式有四种: 从GUI设计窗口工具栏上选 择Property Inspector命令按钮; 选择View菜单下的Property Inspector菜单项; 在命令窗口中输入inspect; 在控件对象上单击鼠标右 键,选择弹出菜单的 Property Inspector菜单项。
菜单编辑器左上角的第四个与第五个按钮用于对选中的 菜单进行左移与右移,第六与第七个按钮用于对选中的菜单 进行上移与下移,最右边的按钮用于删除选中的菜单。
5. 对象浏览器(Object Browsers) 利用对象浏览器,可以查看当前设计阶段的各个句柄图 形对象。可以在对象浏览器中选中一个或多个控件来打开该 控件的属性编辑器。 对象浏览器的打开方式有: ① 从GUI设计窗口的工具栏上选择Object Browser命令按 钮; ② 选择View菜单下的Object Browser子菜单; ③ 在设计区域单击鼠标右键, 选择弹出菜单的 Object Browser。
2. 位置调整工具(Alignment tool) 利用位置调整工具,可以对GUI对象设计区内的多个 对象的位置进行调整。 位置调整工具的打开方式有两种: ① 从GUI设计窗口的工具栏上选择Align Objects命令按钮; ② 选择Tools菜单下的Align Objects...菜 单项,就可以打开对象位置调整器。 对象位置调整器中的第一栏是垂直方向的位置调整, 第二栏是水平方向的位置调整。 在选中多个对象后,可以方便的通过对象位置调整器 调整对象间的对齐方式和距离。
经典MATLAB图形用户界面设计
![经典MATLAB图形用户界面设计](https://img.taocdn.com/s3/m/9785325b0a4e767f5acfa1c7aa00b52acec79c44.png)
使用场景
按钮适用于需要用户进行选择或确认的操作, 例如开始、停止、重置等。
属性设置
可以设置按钮的文本、大小、位置、样式等 属性。
事件处理
当用户点击按钮时,会触发相应的事件,可 以通过编写回调函数来处理该事件文本信息。
属性设置
可以设置文本框的长度、宽度、字体、颜色等属性。
事件处理
当用户滑动滑块时,会触发相应的事件,可以通过编写回调函数来处理该事件。
下拉菜单
功能描述
下拉菜单用于显示多个选项供用户选择。
属性设置
可以设置下拉菜单的选项、默认选项 等属性。
使用场景
适用于需要提供多个选项供用户选择 的场景,如文件打开、保存等。
事件处理
当用户选择下拉菜单中的某个选项时, 会触发相应的事件,可以通过编写回 调函数来处理该事件。
添加事件处理函数
为每个按钮添加事件处 理函数,实现点击按钮 后执行相应的计算操作。
显示结果
在GUI界面上添加一个文 本框,用于显示计算结 果。
保存和运行
保存GUI文件,并运行程 序,测试计算器功能是 否正常。
设计一个数据可视化GUI
加载和预处理数据
使用Matlab的函数加载数据, 并进行必要的预处理。
表格
功能描述
表格用于显示和编辑二维数 据表格。
使用场景
适用于需要展示和编辑大量 数据的场景,如数据统计、 数据分析等。
属性设置
事件处理
可以设置表格的行数、列数、 单元格内容、样式等属性。
当用户编辑表格中的数据时, 会触发相应的事件,可以通 过编写回调函数来处理该事 件。
04
高级GUI设计技巧
使用布局管理器
化的界面设计和代码生成功 能。
MATLABGUI程序设计
![MATLABGUI程序设计](https://img.taocdn.com/s3/m/b1d52d35a517866fb84ae45c3b3567ec112ddc69.png)
MATLABGUI程序设计MATLAB是一种强大的技术计算软件,它具有丰富的功能和灵活的编程环境。
通过使用MATLAB,我们可以进行各种技术计算、数据分析和可视化操作。
在MATLAB中,GUI(Graphical User Interface)程序设计可以帮助我们创建交互式的、用户友好的图形界面应用程序。
在本文中,我将介绍一些MATLAB GUI程序设计的基本知识和步骤。
首先,我们需要了解MATLAB中用于创建GUI的工具和函数。
MATLAB 提供了两个主要的工具箱来支持GUI程序设计:GUIDE(GUI Development Environment)和App Designer。
GUIDE是一个可视化的设计工具,可以通过拖放元件和设置属性来创建GUI。
App Designer是一个面向对象的环境,它使用MATLAB代码进行GUI设计和编程。
为了创建一个GUI程序,我们需要遵循以下几个主要步骤:1. 设计GUI界面:在GUIDE或App Designer中,可以使用各种界面元件(如按钮、文本框、列表等)来构建GUI界面。
我们可以根据需求进行布局和调整大小,并设置元件的属性(如位置、尺寸、颜色等)。
2.编写回调函数:回调函数是GUI中各个元件与代码之间的桥梁,当元件被触发或变化时,回调函数将被调用。
我们可以通过编写回调函数来实现GUI的交互功能。
在MATLAB中,回调函数通常是一个独立的函数文件,其中包含了处理特定事件的代码。
3.处理输入和输出:GUI程序通常需要与用户进行交互,包括接收用户输入和显示程序输出。
在回调函数中,我们可以使用MATLAB的输入/输出函数来实现这些功能。
例如,可以使用输入对话框来接收用户输入,并使用消息框或文本框来显示输出结果。
4.调试和测试:在创建GUI程序的过程中,我们可能会遇到错误和问题。
为了确保程序的正确性和稳定性,我们需要进行调试和测试。
MATLAB 提供了调试工具和函数,可以帮助我们找出错误并修复它们。
第七章 图形用户界面GUI制作
![第七章 图形用户界面GUI制作](https://img.taocdn.com/s3/m/3d43eae10975f46527d3e1e1.png)
elseif button_state == get(h,'Min') % toggle button is not pressed end a(:,:,1) = rand(16,128);
为按纽加图像
a(:,:,2) = rand(16,128); a(:,:,3) = rand(16,128); set(h,'CData',a)
% proceed with callback...
List Box 的编程,从 List Box 中获得所选的项目 (本例有2个项目被选中)
function [var1,var2] = get_var_names(handles) % Returns the names of the two variables to plot list_entries = get(handles.listbox1,'String'); index_selected = get(handles.listbox1,'Value'); if length(index_selected) ~= 2 errordlg('You must select two variables','Incorrect Selection','modal') else var1 = list_entries{index_selected(1)}; var2 = list_entries{index_selected(2)};
Check Box 的编程
Radio Button 选还是没有被选由 Value 属性值来确定
Value = Max, 被选. Value = Min, 没有被选
Matlab的图形用户界面GUI
![Matlab的图形用户界面GUI](https://img.taocdn.com/s3/m/c5952a4fd0d233d4b14e69cc.png)
编辑ppt
20
图7-10 调整空间位置后的界面设计编辑器外观图
编辑ppt
21
➢设置控件属性
图7-10 共有三个按钮,且每个按钮行使相应的功能,在按钮上双击鼠标左键 可以打开按钮属性编辑器,如图7-11所示,该图的左侧是按钮的所有属性,右 侧是其属性值。
图7-11 按钮属性编辑器外观图
编辑ppt
22
:按钮组(Button Group),放到按钮组中的多个单选按钮具有 排它性,但与按钮组外的单选按钮无关。制作界面时常常会遇到有几组 参数具有排它性的情况,即每一组中只能选择一种情况。此时,可以用
几组按钮组表示这几组参数,每一组单选按钮放到一个按钮组控件中。
编辑ppt
12
图7-3 带有控件的图形界面编辑器外观图
编辑ppt
6
:开关按钮(Toggle Button) 和一般按钮形状相 同,区别在于它有两种状态,用鼠标单击按钮,它会从一 种状态变成另一种状态,并执行相应的回调程序(两种状 态各对应不同的回调程序)。
按钮“开”时,Value属性的值为在Max属性中指定的值; 按钮“关”时,Value属性的值为在Min属性中指定的值。
编辑ppt
2
整个GUI的实现过程可以分为以下几步: ➢使用界面设计编辑器进行GUI界面布局设计; ➢理解应用程序M文件中所使用的编程技术; ➢编写GUI组件行为响应控制(即回调函数)代码。 一、启动GUIDE
在Matlab中,GUIDE提供了多种设计模板以方便用户使 用GUI。这些模板均包含相关的回调函数,用户可以打开它 所对应的M文件,看到它们的工作方式,或修改相应的函数,
编辑ppt
18
六、对象浏览器
利用对象浏览器,可查看当前所创建的图形对象。从对象设计编辑器界面的工 具栏上选择,或者选择“View”菜单下的“Object Browser”选项,可以打开 对象浏览器。
MATLAB中的GUI设计基础入门
![MATLAB中的GUI设计基础入门](https://img.taocdn.com/s3/m/595c852d54270722192e453610661ed9ad5155c2.png)
MATLAB中的GUI设计基础入门引言:MATLAB是一种广泛应用于科学计算和工程设计领域的编程语言,它强大的数据处理和可视化功能受到了众多科研人员和工程师的青睐。
而GUI(Graphical User Interface)设计则为使用MATLAB提供了更为直观和便捷的界面,使得用户能够通过图形化的方式与程序进行交互。
本文将介绍MATLAB中GUI设计的基础知识和入门技巧,帮助读者快速掌握GUI的设计和实现。
一、GUI的基本概念和功能GUI是一种以图形方式呈现的用户界面,用户可以通过鼠标点击、拖拽等方式与程序进行交互。
在MATLAB中,GUI由一系列控件(如按钮、文本框、下拉菜单等)组成,它们可以用来显示数据、接收用户输入、执行命令等。
在GUI设计中,一个重要的概念是回调函数(callback function)。
回调函数是与GUI控件相关联的函数,当用户与控件进行交互时,回调函数会被自动调用。
通过编写回调函数,我们可以实现对用户操作的响应,并执行相应的功能。
下面是一个简单的例子:```matlabfunction myButtonCallback(hObject, eventdata)disp('按钮被点击了');end```在上述例子中,hObject和eventdata是回调函数的输入参数,可以用来获取与回调函数相关的信息。
disp函数用于在MATLAB命令窗口中显示一段文本,表明按钮被点击了。
二、创建GUI界面在MATLAB中,我们可以通过两种方式创建GUI界面:可视化编辑器和手动编程。
1. 可视化编辑器:MATLAB提供了一个名为GUIDE(GUI Development Environment)的可视化编辑器,它可以快速创建GUI界面。
我们只需要拖拽控件到界面上,设置其属性,然后通过GUIDE生成对应的GUI程序代码。
GUIDE生成的代码包含了控件的创建和布局,以及回调函数的定义。
MATLAB 7-1 GUI
![MATLAB 7-1 GUI](https://img.taocdn.com/s3/m/d65271a20029bd64783e2c85.png)
对话框的设计 I 命令行方式 1. 建立控件对象 MATLAB提供了用于建立控件对象的函数uicontrol,其 调用格式为: 对象句柄=uicontrol(图形窗口句柄,属性名1,属性值 1,属性名2,属性值2,…) 其中各个属性名及可取的值和前面介绍的uimenu函数 相似,但也不尽相同。 2. 控件对象的属性 MATLAB的10种控件对象使用相同的属性类型,但是 这些属性对于不同类型的控件对象,其含义不尽相同。 除 Children 、 Parent 、 Tag 、 Type 、 UserData 、 Visible等公共属性外,还有一些常用的特殊属性。
MATLAB @SDU 10
对话框设计
对话框的控件 (1)按钮(Push Button)。 (2)双位按钮(Toggle Button)。 (3)单选按钮(Radio Button)。 (4)复选框(Check Box)。 (5)列表框(List Box)。 (6)弹出框(Popup Menu)。 (7)编辑框(Edit Box)。 (8)滑动条(Slider)。 (9)静态文本(Static Text)。 (10)边框(Frame)。
注:默认排列在标准菜单右边;自制子菜单按照创建先后 自上而下排列,简捷键“&”,快捷键“Accelerator”
例1
MATLAB @SDU 5
快捷菜单(右键菜单)
在MATLAB中,可以使用uicontextmenu函数和图形对象的 UIContextMenu属性来建立快捷菜单,具体步骤为: (1)利用uicontextmenu函数建立快捷菜单。 (2)利用uimenu函数为快捷菜单建立菜单项。 (3)利用set函数将该快捷菜单和某图形对象联系起来。
MATLABGUI界面设计资料
![MATLABGUI界面设计资料](https://img.taocdn.com/s3/m/69c255b6daef5ef7ba0d3c53.png)
22
火龙果整理
4. 菜单编辑器(Menu Editor)
菜单编辑器左上角的第四 个与第五个按钮用于对选 中的菜单进行左移与右移, 第六与第七个按钮用于对 选中的菜单进行上移与下 移,最右边的按钮用于删 除选中的菜单。
23
火龙果整理
5. 对象浏览器(Object Browsers)
3
图形用户界面设计工具的启动
图形用户界面设计工具的启动方式: 1. 命令方式
火龙果整理
图形用户界面GUI设计工具的启动命令为guide,格式为: 1)guide 功能:启动GUI设计工具,并建立名字为untitled.fig的图形 用户界面。 2)guide filename 功能:启动GUI设计工具,并打开已建立的图形用户界面 filename。
28
2.控件对象的属性 (Attributes of controller object)
火龙果整理
每种控件都有一些可以设置的参数,用于表现控件 的外形、功能及效果,即属性。属性由两部分组成: 属性名和属性值,它们必须是成对出现的。 用户可以在创建控件对象时,设定其属性值,未指 定时将使用系统缺省值。 两大类控件对象属性:第一类是所有控件对象都具 有的公共属性,第二类是控件对象作为图形对象所具 有的属性。
1. 布局编辑器(Layout editor)
3) 运行GUI程序 在命令窗口直接键入文件名或用openfig, open或hgload命令运行GUI程序。
14
火龙果整理
4) 布局编辑器参数设置
File菜单下的
Preferences菜
单项打开参数 设置窗口,点 击树状目录中 的GUIDE, 即可以设置布 局编辑器的参 数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
图 7-14
保存图形界面的对话框图
23
同时,Matlab会自动创建一个同名的M文件,并且自动打开,如图7-15所示。
图7-15
自动生成的M文件
其次,在自动生成的M文件中,找到与三个按钮有关的回调子函数,本例中的 回调子函数见图7-16所示的光标定位处(这里我们仅截取了按钮1的回调子函 数)。
第七章
Matlab的图形用户界面GUI
GUI设计工具简介 GUI向导设计 GUI程序设计
1
第一节
GUI设计工具简介
通常在开发一个应用程序时都会尽量做到界面友好、 直观。最常用的方法就是使用图形用户界面。在Matlab中, 图形用户界面是一个包含多种对象的图形窗口。用户必须 对功能对象进行界面布局和编程,从而使用户在激活GUI的 功能对象时能够执行相应的行为。 Matlab为用户开发图形界面提供了一个方便、高效的 集成开发环境GUIDE(Graphic User Interface Development Environment)。GUIDE主要是一个界面设计 工具集,Matlab将所有GUI的控件都集成在这个环境中并提 供界面外观、属性和行为响应方式的设置方法。GUIDE将用 户设计好的GUI界面保存在一个FIG文件中,同时还自动生 成一个包含GUI初始化和组件界面布局控制代码的M文件。 这个M文件为实现回调函数(当用户激活GUI某一个组件时 执行的函数)提供了一个参考框架,这样既简化了GUI应用 程序的创建工作,用户又可以直接使用这个框架来编写自 己的函数代码。
11
:滑动条(slider),又称滚动条,包括三个部分,分别是滑动槽,
表示取值范围;滑动槽内的滑块,代表滑动条的当前值;以及在滑动条 两端的箭头,用于改变滑动条的值。 滑动条一般用于从一定的范围中取值。改变滑动条的值有三种方式, 一种是用鼠标指针拖动滑块,在滑块位于期望位置后放开鼠标;另一种 是当指针处于滑块槽中但不在滑块上时,单击鼠标按钮,滑块沿该方向 移动一定距离,距离的大小在属性“SliderStep”中设置,缺省情况下 等于整个范围的10%;第三种方式是在滑块条的某一端用鼠标单击箭头, 滑块沿着箭头的方向移动一定的距离,距离的大小在属性“SliderStep” 中设置,缺省情况下为整个范围的1%。 滑动条的“Style”属性的默认值是“slider” :按钮组(Button Group),放到按钮组中的多个单选按钮具 有排它性,但与按钮组外的单选按钮无关。制作界面时常常会遇到有几 组参数具有排它性的情况,即每一组中只能选择一种情况。此时,可以 用几组按钮组表示这几组参数,每一组单选按钮放到一个按钮组控件中。
图7-5
属性编辑器外观图
15
五、菜单编辑器
利用菜单编辑器,可以创建、设置、修改下拉式菜单和弹出式菜单。在 GUIDE中单击工具栏上的按钮,或者选择“Tools”菜单中的“Menu Editor”选项,打开菜单编辑器的界面,如图7-6所示:
图 7-6
菜单编辑器界面图
GUIDE能够创建两种类型的菜单。一种是在图形窗口菜单栏中显示的菜 单栏菜单;另一种是当用户在图形对象上单击鼠标右键时产生的上下 文菜单。可以使用菜单编辑器来创建这两种类型的菜单。
12
图7-3
带有控件的图形界面编辑器外观图
三、几何位置排列工具
13
利用对象对齐工具,可以很方便地对对象设计编辑器中设计区内多个对象的位置 进行调整。从对象设计编辑器界面的工具栏上选择按钮,或者选择“Tools”菜单 下的“Align Objects...”选项,可以打开对象位置调整器,如图7-4所示:
8
Menu),向用户提出互斥的一 系列选项清单,用户可以选择其中的某一项。弹出式菜单 下拉式菜单,它不受菜单条的限制,可以位于图形窗口内 的任何位置。 通常状态下,弹出式菜单以矩形的形式出现,矩形中 含有当前选择的选项,在选项右侧有一个向下的箭头来表 明该对象是一个弹出式菜单。当指针处在弹出式菜单的箭 头之上并按下鼠标时,出现所有选项。移动指针到不同的 选项,单击鼠标左键就选中了该选项,同时关闭弹出式菜 单,显示新的选项。 选择一个选项后,弹出式菜单的“Value”属性值为该 选项的序号。 : 弹出式菜单的“Style”属性的默认值是 “popupmenu”,在“string”属性中设置弹出式菜单的选 项字符串,在不同的选项之间用“|”分隔,类似于换行。
2
整个GUI的实现过程可以分为以下几步: 使用界面设计编辑器进行GUI界面布局设计; 理解应用程序M文件中所使用的编程技术; 编写GUI组件行为响应控制(即回调函数)代码。 一、启动GUIDE 在Matlab中,GUIDE提供了多种设计模板以方便用户使 用GUI。这些模板均包含相关的回调函数,用户可以打开它 所对应的M文件,看到它们的工作方式,或修改相应的函数, 从而实现自己需要的功能。 在Matlab 中,可以通过如下两种方法来访问模板: 直接输入“guide”命令,打开如图7-1所示的界面; 通过File菜单中的New选项也可以打开GUI模板界面。
16
1.创建菜单栏菜单
图7-6中左上角第一个按钮用于创建下拉式菜单。用户可以通过点击它来创建下 拉式主菜单;第二个按钮用于创建下拉式菜单的子菜单,在选中已经创建的下拉 式菜单后,可以单击这个按钮来创建选中的下拉式主菜单的子菜单。选中创建的 某个下拉式菜单后,菜单编辑器的右边就会出现显示该菜单的有关属性,用户可 以在这里设置、修改菜单的属览器,可查看当前所创建的图形对象。从对象设计编辑器界面的工 具栏上选择,或者选择“View”菜单下的“Object Browser”选项,可以打开 对象浏览器。
图 7-9 对象浏览器
19
第二节
GUI向导设计
GUI的向导设计,简单地说,就是利用GUI设计工具集实现多种 控制对象的设计。本节我们将通过实例实践其具体操作过程。 【例7-1】 设计一个带有三个按钮和一个坐标轴的图形用户界面,当用 鼠标点击三个按钮时,分别在坐标轴内画sphere,和membrane三个图 形。peaks 创建控件 前面我们已经建立了带有一个坐标轴和三个按钮控件的图形界面, 这里就不赘述了,如前图7-3所示。 设置控件对齐方式 若控件排列不够整齐,当控件个数较少时,逐个调整尚可,但当控 件个数较多时,逐个调整将变得麻烦,费时,这时我们可以应用几何 位置排列工具对控件的位置进行调整。 首先要将待调整的控件同时选中。选中方法有两种:一是按住 “Ctrl”键,用鼠标左键逐一点击要调整的控件;二是按住鼠标左键 进行拖拽框选,然后点击工具栏上的打开几何位置排列工具窗口,再 点击下面的,使得所选的控件左对齐,点击“确定”后,界面设计编 辑器效果如图7-10所示。
7
:单选按钮(Radio Button),又称无线按 钮,它由一个标注字符串(在“String” 属性 中设置)和字符串左侧的一个小圆圈组成。当它 被选择时,圆圈被填充一个黑点,且属性“Value” 的值为“1”;若未被选择,圆圈为空,属性的 “Value”值为“0”。 单选按钮一般用于在一组互斥的选项中选择 一项。为了确保互斥性,各单选按钮的回调程序 需要将其它各项的“Value”值设为“0”。 单选按钮 “style”的属性的默认值是“Radio Button”。
6
:开关按钮(Toggle Button) 和一般按钮形状相 同,区别在于它有两种状态,用鼠标单击按钮,它会从一 种状态变成另一种状态,并执行相应的回调程序(两种状 态各对应不同的回调程序)。 按钮“开”时,Value属性的值为在Max属性中指定的值; 按钮“关”时,Value属性的值为在Min属性中指定的值。 按钮的“Style”属性的默认值是“togglebutton”。 :编辑框(Edit Text),允许用户动态地编辑文本 字符串或数字,就象使用文本编辑器或文字处理器一样。 编辑框一般用于让用户输入或修改文本字符串和数字。 编辑框的“String”属性“的默认值是“Edit Text”。
:静态文本框(text),静态文本框用来显示文本字符串, :
10
:列表框(listbox),列表框列出一些选项的清单, 并允许用户选择其中的一个或多个选项,一个或多个的模 式由Min和Max属性控制。Value 属性的值为被选中选项的 序号,同时也指示了选中选项的个数。 当单击鼠标按钮选中该项后,Value属性的值被改变, 释放鼠标按钮的时候Matlab执行列表框的回调程序。 列表框的“Style”属性的默认值是“listbox”。 :复选框(checkbox),又称检查框,它由一个标注 字符串(在“String”属性中设置)和字符串左侧的一个 小方框所组成。选中时在方框内添加“√”符号, “Value”属性值设为“1”;未选中时方框变空, “Value”属性值设为“0”。复选框一般用于表明选项的 状态或属性。
3
图7-1
进入GUI的初始界面
4
在创建新的GUI时,Matlab 提供了空白模板、带有控制按钮 的模板、带有坐标轴和菜单的模板以及问答式对话框4种模板。其 中空白模板如图7-2所示:
图7-2
空白界面编辑器外观图
5
二、用户界面控件对象介绍
在空白模板中GUIDE提供了用户界面控件以及界面设计 工具集来实现用户界面的创建工作,用户界面控件分布在界 面编辑器的左侧,下面我们对各控件加以介绍。 :按钮(Push Button),是小的矩形面,在其上 面标有说明该按钮功能的文本。将鼠标指针移动至按钮,单 击鼠标,按钮被按下随即自动弹起,并执行回调程序。 按钮的“Style”属性的默认值是“pushbotton”。
图 7-7
下拉式菜单创建图
17
2. 创建上下文菜单
利用菜单编辑器创建上下文菜单对象后,当用户在图形对象上单击鼠标右键时, 上下文菜单会随之出现,这样可以根据上下文的具体内容修改图形对象的相应 属性,故菜单编辑器能够创建上下文菜单并将菜单与图形对象联系起来。
图7-8
上下文菜单创建图