MATLAB GUI对话框设计
在Matlab中使用GUI设计用户界面
在Matlab中使用GUI设计用户界面引言Graphical User Interface (GUI) 是现代计算机软件中常用的一种类型用户界面,它通过图形化的形式提供了直观、易用的操作方式。
Matlab作为一种功能强大的数值计算软件,也提供了丰富的GUI设计工具,使得用户可以通过简单的拖拽和设置,快速地创建出美观实用的用户界面。
本文将介绍在Matlab中使用GUI设计用户界面的基本原理和步骤,并结合实例演示具体操作。
一、Matlab中的GUI设计工具Matlab提供了几种常用的GUI设计工具,包括GUIDE(GUI Development Environment)和App Designer。
GUIDE是Matlab较早期的一个GUI设计工具,提供了可视化的编辑界面,方便用户进行界面布局和交互事件的设置。
而App Designer是Matlab较新推出的GUI设计工具,相比GUIDE具有更加丰富的功能和更好的可视化编辑体验。
在本文中,我们将以App Designer为例来介绍Matlab中的GUI设计过程。
二、创建GUI应用程序在Matlab的主界面中,点击"APPS"菜单,选择"App Designer"打开App Designer界面,然后点击"Create App"按钮创建一个新的GUI应用程序。
在弹出的对话框中输入应用程序的名称并设置保存位置,点击"Create"按钮即可创建一个空的GUI应用程序。
三、设计用户界面在App Designer中,可以通过拖拽和调整控件来设计用户界面。
常用的控件包括按钮、文本框、下拉菜单、滑块等,用户可以根据需求自由选择和排列这些控件。
同时,还可以设置控件的属性,如大小、颜色、字体等,以及添加交互事件,如按下按钮后执行的操作。
四、设置控件属性和交互事件在设计好用户界面后,需要为每个控件设置相应的属性和交互事件。
MATLAB学习笔记(十一)——MATLAB图形用户界面设计
MATLAB学习笔记(⼗⼀)——MATLAB图形⽤户界⾯设计(⼀)菜单设计⼀、建⽴⽤户菜单1、概况:⽤户菜单⼀般含有⼀级菜单和⼆级菜单,乃⾄多级菜单。
每⼀级菜单⼜包含多个菜单项。
建⽴菜单可以使⽤uimenu函数。
2、uimenu函数调⽤:%建⽴⼀级菜单的函数调⽤:⼀级菜单句柄=uimenu(图形窗⼝句柄,属性名1,属性值1,属性名2,属性值2,……);%建⽴⼀级菜单需给出图形窗⼝的句柄值。
%如果省略句柄值,MATLAB就在当前图形窗⼝中建⽴这个菜单项。
%如果当前没有图形窗⼝,则⾃动打开⼀个图形窗⼝。
%建⽴⼦菜单项的函数调⽤:⼦菜单项句柄=uimenu(⼀级菜单项句柄,属性名1,属性值1,属性名2,属性值2,……);⼆、菜单对象的常⽤属性:1、Label属性:取值是字符串,⽤于定义菜单项的名字。
可以在字符串中加⼊&字符,这时在菜单项名字上,跟随&字符有⼀条下划线,&字符本⾝不出现在菜单项中。
对于这种有带下划线的菜单,可以⽤Alt键加该字符键来激活相应的菜单项。
2、Accelerator属性:取值是任何字母,⽤于定义菜单项的快捷键。
3、Callback属性:可以是某个M⽂件名或者⼀组MATLAB命令。
即该命令被选中后,MATLAB会⾃动调⽤此回调函数进⾏相应。
4、Checked属性:取值是on或者off(缺省值),该属性为菜单项定义⼀个指⽰标记,可以⽤这个特性指明菜单项是否被选中。
5、Enable属性:取值是on(缺省值)或者off,这个属性控制菜单项的可选择性。
如果是off,则此时菜单项不可⽤,呈现灰⾊。
6、Position属性:取值是数值,定义⼀级菜单项在菜单条上的相对位置或者紫菜单项⼦菜单组内的相对位置。
7、Separator属性:取值是on或者off(缺省值)。
如果该属性为on,则在该菜单项上⽅添加⼀条分隔线,可以⽤来分隔同⼀菜单内的不同的功能。
⼀个demo:screen=get(0,'ScreenSize');W=screen(3);H=screen(4);figure('Color',[1,1,1],'Position',[0.2*H,0.2*H,0.5*W,0.3*H],'Name','图形演⽰系统','NumberTitle','off','MenuBar','none');%定义plot菜单项hplot=uimenu(gcf,'Label','&Plot');uimenu(hplot,'Label','Sine Wave','Callback',['t=-pi:pi/20:pi;','plot(t,sin(t));','set(hgon,''Enable'',''on'');','set(hgoff,''Enable'',''on'');','set(hbon,''Enable'',''on'');','set(hboff,''Enab;e'',''on'');']); uimenu(hplot,'Label','Cosine Wave','Callback',['t=-pi:pi/20:pi;','plot(t,cos(t));','set(hgon,''Enable'',''on'');','set(hgoff,''Enable'',''on'');','set(hbon,''Enable'',''on'');','set(hboff,''Enab;e'',''on'');']); %定义Option菜单项hoption=uimenu(gcf,'Label','&Option');hgon=uimenu(hoption,'Label','&Grid on','Callback','grid on','Enable','off');hgoff=uimenu(hoption,'Label','&Grid off','Callback','grid off','Enable','off');hbon=uimenu(hoption,'Label','&Box on','separator','on','Callback','box on','Enable','off');hboff=uimenu(hoption,'Label','&Box off','separator','off','Callback','box off','Enable','off');hwincor=uimenu(hoption,'Label','&Window Color','Separator','on');%定义window coloruimenu(hwincor,'Label','&Red','Accelerator','r','Callback','set(gcf,''Color'',''r'');');uimenu(hwincor,'Label','&Blue','Accelerator','b','Callback','set(gcf,''Color'',''b'');');uimenu(hwincor,'Label','&Yellow','Accelerator','y','Callback','set(gcf,''Color'',''y'');');uimenu(hwincor,'Label','&White','Accelerator','w','Callback','set(gcf,''Color'',''w'');');%定义Quit菜单项uimenu(gcf,'Label','&Quit','Callback','close(gcf)');三、快捷菜单1、概念快捷菜单是⽤⿏标右键单击某对象时在屏幕弹出的菜单。
MATLAB8.5教程第11章 图形用户界面(GUI)设计
(6)M文件编辑器 点击M文件编辑器,系统自动产生M文件(或打开已建立 的M文件),如图11-9所示。文件内的程序包括各种控件 的回调函数和注释等。用户只需在各控件的回调函数下 面填写代码,通过编写程序来控制控件的动作。在系统 运行过程中当触发到某控件时,相应的回调函数就会执 行。控件的属性tag是唯一标识符,通过它来识别控制对 象。
2.界面布局 添加需要的控件摆放到输出编辑器“untitled.fig”中合 适的位置,对多个同样的控件,为摆放整齐,可以打开工 具栏中的对象对齐(Align Objects)图标 ,进行各种方 式处理。并可用鼠标选中右下角的版面大小控制句柄来缩 放版面。 选择5个静态文本框【Static Text】,其中4个用来做文 本标签,一个用来显示结果;2个编辑文本框【Edit Text 】,用来输入数据;2个面板【Panel】和4个触控按钮【 Pushbutton】,分别用鼠标拖到“untitled.fig”窗口中 ,其摆放位置如图1-15所示。
3.编辑控件的属性 利用属性查看器(Property Inspector),设置各个控件 的参数(见表11-3所示)
修改完毕后点击属性查看器右上角的“关闭” ,属性会自动保存。且图 11-14 界面产生 的结果如图 11-15 所示。
图 11-15 设计控件属性的输出编辑器窗口
4.存储 GUIDE 输出编辑器界面 点击菜单栏中的保存图标,在弹出的【Save as】对话框中填写文件名“jisuanqi” ,单击 【保存】 按钮, 如图 11-16 所示。 此时图 11-15 的界面最上方左边角的名称变为 “jisuanqi.fig” , 如图 11-17 所示, 这个输出编辑器窗口就是已保存且可打开进行添加、 修改控件的设计窗口。 同时 MATLAB 将自动生成“jisuanqi.m”和“jisuanqi.fig”两个文件,其中“jisuanqi.m”文 件可用来编写回调函数代码, “jisuanqi.fig”文件可用来打开功能界面。
matlabGUI人机用户界面设计[6]
图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)。
matlabGUI之常用对话框(四)--输入对话框inputdlg、目录对话框uigetd。。。
matlabGUI之常⽤对话框(四)--输⼊对话框inputdlg、⽬录对话框uigetd。
常⽤对话框(四)1.输⼊对话框 inputdlg answer = inputdlg(prompt) answer = inputdlg(prompt,dlg_title) answer = inputdlg(prompt,dlg_title,num_lines) answer = inputdlg(prompt,dlg_title,num_lines,defAns) answer = inputdlg(prompt,dlg_title,num_lines,defAns,options)创建⼀个输⼊对话框,prompt为提⽰字符串,title为对话框名称,num_line为显⽰的⾏数,defAns为默认的数值1 %输⼊对话框2 inputdlg('请输⼊⽤户名:','找回密码');1 inputdlg({'⽤户名','密码'},'登录名'); % 使⽤元胞数组1 inputdlg('请输⼊你的留⾔','客户留⾔',3); % 显⽰3⾏1 inputdlg({'x(1)','x(2)'},'横坐标设置',1,{'0','10'}); % 有默认值2.⽬录选择对话框 uigetdir folder_name = uigetdir folder_name = uigetdir(start_path) folder_name = uigetdir(start_path,dialog_title) start_path为默认的路径,dialog_title为对话框名称3.列表选择对话框 Listdlg [Selection,ok] = listdlg('ListString',S) selection代表选项的索引值,OK代表单击ok返回1,单击cancel返回0;1 %列表选择对话框2 [sel,ok]=listdlg('liststring',{'⾃控原理','⾃动检测','单⽚机嵌⼊式','化⼯原理','软件你基础'},...3'listsize',[18080],'OkString','确定','CancelString','取消',...4'promptstring','课程科⽬','name','选择你所感兴趣的科⽬(多选)','selectionmode','multiple'); % selectmode属性有2个选项single和multiple。
matlab用户图形界面设计GUI
一、菜单设计
• Matlab用户菜单对象是图形窗口的子对象, 所以菜单设计总是在某一个图形窗口中进 行。Matlab的图形窗口有自己的菜单栏, 为了建立用户自己的菜单系统,需要先将 图形窗口的MenuBar属性设置为none,以取 消图形窗口的默认菜单,然后再建立自己 的菜单。 • 取消默认菜单:figure('menubar','none')
• 1.建立用户菜单
• 用户菜单通常包括一级菜单(菜单条)和二级菜单,有时 还需要继续建立下级菜单如三级菜单等。而每一级菜单 又包括若干菜单项。 • 建立用户菜单的函数为:uimenu,根据不同的调用格 式可以创建一级菜单项和子菜单项。 • 建立一级菜单的调用格式: • 一级菜单项句柄=uimenu(图形窗口句柄,属性名1,属 性值1,属性名2,属性值2,…) • 建立子菜单项的调用格式: • 子菜单项句柄=uimenu(一级菜单项句柄,属性名1,属 性值1,属性名2,属性值2,…)
• (5)列表框list box,列表框列出可供选择的一些选项。 • (6)弹出框popup menu,弹出框平时只显示当前选项, 单击右端的下拉箭头即可弹出一个列表框,列出全部 选项,作用和列表框类似。 • (7)编辑框edit box,可供用户输入数据之用,可在编 辑框中提供默认的输入值,随后用户可以修改。 • (8)滑动条slider,滑动条可以用图示的方式输入指定 范围内的一个数值,可以移动滑动条中间的游标来改 变对应的数值。 • (9)静态文本static text,是在对话框中显示的说明性文 字,一般用来给用户提供必要的提示,不能在程序执 行过程中改变文字说明。 • (10)边框frame,主要用于修饰用户界面,使用户界面 更友好,也可用边框在图形窗口中圈出一块区域,将 某些控件对象组织在这块区域中。
MatlabGUI设计详细说明
MatlabGUI设计详细说明Matlab GUI设计⼩结1.pushbutton在function pushbutton1_Callback(hObject,eventdata,handles)下进⾏pushbutton功能设计,按下pushbutton后会执⾏回调函数callback中的程序,双击pushbutton弹出属性编辑对话框,在String中可以键⼊pushbutton的名字function pushbutton1_Callback(hObject,eventdata,handles)%功能程序代码guidata(hObject,handles);2.edit编辑框%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%get()set()num2str()str2num()open函数名%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% edit可以作为输⼊输出读⼊数据d=get(handles.edit1,’String’);这时读进来的是字符型数据,通过str2num可以转换成double型d=str2num(d);作为输出,通过set来设置,输出的应该是字符型,可以通过num2str把set(handles.edit1,’String’,num2str(d));matlab的系统函数如get(),set(),num2str(),str2num()可以通过在matlab命令⾏中键⼊open函数名来查看函数实现源代码3.static text静态⽂本框text只能作为输出,通过set(handles.text1,’String’,str)来设置text显⽰的内容,也可以在属性编辑对话框中String中直接键⼊。
4.popupmenu下拉菜单这是第⼀个⽐较复杂的对象。
在GUI编程可以直接在属性编辑对话框中String⼀项直接键⼊下拉菜单中的内容然后是如何读取下拉菜单中选中的内容通过Value可以获取下拉菜单中当前选中的是哪⼀个String,Val=get(handles.popupmenu1,’Value’)返回的是下拉菜单中选中的string对应的位置Popupmenu其实是⼀个字符串数组,Value返回的是当前选中的字符串在数组中的下标,下标是从1开始。
MATLABGUI程序设计
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 提供了调试工具和函数,可以帮助我们找出错误并修复它们。
在Matlab中使用GUI工具箱进行界面设计
在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程序设计
%得到当前方位角在滚动条中的实际数值;
handles.az= val1;
%对handles.az重新赋值;
guidata(hObject,handles); % 存储handles结构.
if isnumeric(val) & val >= -90 & val <= 90 %判断若输入的数值在规定范围
view([handles.az,handles.el]);
else
errordlg('输入参数错误!输入数值在[-90,90]之间!');
set(handles.edit_el,'String','30' );
end
errordlg函数,是一个Matlab自定义的弹出式 出错对话框函数,该函数的输入参数为对话框 上显示的字符串.当程序执行到此时,会弹出一 个出错对话框,并显示出错信息: 输入参数错误!输入数值在[-90,90]之间!
GUI界面设计
后台回调函数设计
(1) GUI程序启动与界面简介
新建一个GUI程序,可以Command Window中输入 guide,或者在Matlab界面菜单上点击
在弹出的对话框中,选择“Creat New GUI”的“Blank GUI(Default)”选项,选择OK后,即打开一个空 白的GUI程序界面,
保存后运行,可发现此时已在轴上绘制出peaks的图形, 且视角显示对应的数据,这表明此时已经自动运行了该 函数.但拖动滚动条时程序没有反应,这是因为还没设置 拖动滚动条时的回调函数.
(2)为编辑框设置回调函数
在prog1_8.fig上,选中edit_az编辑框,点右键,选中 “view Callbacks”,选中Callback,即进行回调函数编写.
基于MATLAB图形演示对话框的简单设计
运行结果如图2所示
图2图形窗口坐标建立
此程序可以在图形窗口建立绘图坐标及输入命令编辑框,用相应按钮控,
2.在图形窗口建立坐标及输入命令编辑框
MATLAB程序如下:
axes('position',[0.05,0.15,0.55,0.7]);%建立坐标轴
conuitrol(gcf,'style','text','Unit','normalized','P0.1],'string','请输入绘图命令','Horizontal','center');%建立用户界面控件
【摘要】MATLAB是新兴的编程语言和可视化工具,它提供了非常强大的编写图形用户界面的功能,简称为GUI(GraphicUserInterface)。所谓图形用户界面是指窗口、菜单、对话框等各种图形元素组成的用户界面。在这种用户界面中,用户的操作及形象生动,方便灵活,所以当今绝大部分开发环境与应用程序都采用图形用户界面,许多流行的开发工具都可以进行图形用户界面的设计。同时,MATLAB作为功能强大的科学计算软件,同样也提供了图形用户界面设计的功能,在MATLAB中,基本的图形用户界面对象包含3类:用户界面控件对象、下拉式菜单对象、快捷菜单对象。根据这些图形对象,可以设计出界面友好、操作方便的图形用户界面。在图形用户界面的设计中,对话框的设计相当重要,很多课本中通过最小二乘法仿真的对话框设计作为实例说明其应用,并且介绍了利用图形的标识标签来确定其句柄值的简便方法。对话框是用户与计算机尽心交流的临时窗口,在现代软件中有着广泛地应用。在软件设计时,借助于对话框可以更好的满足用户操作需要,使用户操作更加方便灵活。在图形用户界面程序设计中,对话框是重要的信息显示和获取用户输入数据的用户界面对象。使用对话框,可以使应用程序的界面更加友好,使用更加方便。MATLAB提供了两类对话框,一类为Windows的公共对话框,另一类为MATLAB风格的专用对话框。
Matlab基本知识-对话框
MATLAB-GUI基本知识系列教程(1)--对话框2010-07-05 15:22:19| 分类:默认分类| 标签:|举报|字号大中小订阅1.打开对话框格式[FileName,PathName,FilterIndex] = uigetfile(FilterSpec,DialogTitle);[FileName,PathName,FilterIndex] = uigetfile(...,'MultiSelect',selectmode)其中:参数FilterSpe是指定在对话框中显示的文件类型的字符串,如“*.m”、“*.mat”等等。
参数DialogTitle指定对话框的标题。
对话框执行后,filename 包含了所选择的文件名,而pathname 包含了文件的路径。
如果取消对话框,则filename 被设为0。
使用模板:1.[filename, pathname] = uigetfile({'*.m';'*.mdl';'*.mat';'*.*'},'File Selector');使用MATLAB默认的解释文件方式。
2. [filename, pathname] = uigetfile( ...{'*.m;*.fig;*.mat;*.mdl','MATLAB Files (*.m,*.fig,*.mat,*.mdl)';'*.m', 'M-files (*.m)'; ...'*.fig','Figures (*.fig)'; ...'*.mat','MAT-files (*.mat)'; ...'*.mdl','Models (*.mdl)'; ...'*.*', 'All Files (*.*)'}, ...'Pick a file');自己修改解释文件的方式。
matlab gui 总结
matlab gui 总结Matlab GUI(图形用户界面)是一种可视化工具,用于创建交互式界面以方便地在Matlab中进行数据分析和处理。
在此,我们将总结Matlab GUI的一些重要特点和功能。
1. 创建GUI:Matlab GUI的创建主要分为两种方法:a. 使用.m文件直接动态添加控件b. 使用GUIDE(Graphical User Interface Design Environment)快速生成GUI界面。
第二种方法更适合开发大型程序。
2. 控件添加与布局:在GUI中,可以添加各种控件,如按钮、文本框、静态文本、列表框等。
通过布局编辑器和对齐工具,可以方便地调整控件的位置和样式。
3. 对话框设计:Matlab提供了多种对话框类型,如错误对话框(errordlg)、帮助对话框(helpdlg)、输入对话框(inputdlg)等。
这些对话框可用于向用户显示信息、获取用户输入或确认操作等。
4. 文件操作与对话框:Matlab提供了文件检索对话框(uigetfile)和写入文件对话框(uiputfile),方便在GUI中实现文件打开、保存和导入等功能。
5. 弹出新窗口:要弹出新窗口,可以使用open()函数打开一个新的图形窗口。
在新窗口中,可以添加其他控件和功能,如显示计算结果等。
6. 回调函数与事件处理:GUI控件通常需要与Matlab函数或脚本进行交互。
通过为控件设置回调函数,可以实现对用户操作的响应和处理。
7. 代码组织与可维护性:为了提高代码的可读性和可维护性,建议将GUI相关的代码组织在单独的.m文件中,并在需要时调用这些文件。
8. 实例与教程:有许多Matlab GUI的实例和教程可供参考。
通过学习这些实例和教程,可以更好地了解Matlab GUI的开发方法和技巧。
总之,Matlab GUI是一种强大的工具,可以帮助用户更方便地完成数据分析、绘图和计算任务。
通过学习和实践,可以熟练掌握Matlab GUI的开发技巧,提高工作效率。
一个matlab_GUI可编辑框、弹出框、列表框、按键示例的问题剖析
一个matlab_GUI可编辑框、弹出框、列表框、按键示例的问题剖析% 可编辑框、弹出框、列表框、按键示例% 目标:制作一个能绘制任意图形的交互界面。
它包括:可编辑文本框、弹出框、列表框。
% 这个例子是我在一本matlab教程书上看到得一个示例,非常好的一个例子。
% 可怎么运行都出不来结果,弄了半天发现原来是字符串没有转换成数字表达式的原因。
(蓝色部分为后加)% 加上以后发现时可以运行出结果的。
原来以为7.0和6.5都行,用7.0版本高,功能多还向下兼容,%原来却不是这样。
7.0的确向下兼容,但这里兼容的意思只是不报错,而至于能不能运行出在6.5%中运行出的结果来,那就不得而知了。
大家可以拿去学习学习哈~clf reset % <1>set(gcf, 'unit' , 'normalized' , 'position' ,[0.1,0.4,0.85,0.35]); % 设置图形窗大小set(gcf, 'defaultuicontrolunits' , 'normalized' );set(gcf, 'defaultuicontrolfontsize' ,11);set(gcf, 'defaultuicontrolfontname' , ' 隶书' );set(gcf, 'defaultuicontrolhorizontal' , 'left' );set(gcf, 'menubar' , 'none' ); % 删除图形窗工具条str= ' 通过多行指令绘图的交互界面' ;set(gcf, 'name' ,str, 'numbertitle' , 'off' ); % 书写图形窗名h_axes=axes( 'position' ,[0.05,0.15,0.45,0.70], 'visible' , 'off' ); % 定义轴位框位置uicontrol(gcf, 'Style' , 'text' , ... % 制作静态文本框'position' ,[0.52,0.87,0.26,0.1], ...'String' , ' 绘图指令输入框' );hedit=uicontrol(gcf, 'Style' , 'edit' , ... % 制作可编辑文本框<14>'position' ,[0.52,0.05,0.26,0.8], ...'Max' ,2); % 取2 ,使Max-Min>1 ,而允许多行输入<16>hpop=uicontrol(gcf, 'style' , 'popup' , ... % 制作弹出菜单<17>'position' ,[0.8,0.73,0.18,0.12], ...'string' , '张老师|summer|autumn|winter' ); % 设置弹出框中选项名<19>hlist=uicontrol(gcf, 'Style' , 'list' , ... % 制作列表框<20>'position' ,[0.8,0.23,0.18,0.37], ...'string' , '生气Grid on|打人Box on|摔手机Hidden off|吵架Axis off' , ... % 设置列表框中选项名<22>'Max' ,2); % 取2 ,使Max-Min>1 ,而允许多项选择<23>hpush=uicontrol(gcf, 'Style' , 'push' , ... % 制作与列表框配用的按键<24>'position' ,[0.8,0.05,0.18,0.15], 'string' , '应用Apply' );set(hedit, 'callback' , 'calledit(hedit,hpop,hlist)' ); % 编辑框输入引起回调<26> set(hpop, 'callback' , 'calledit(hedit,hpop,hlist)' ); % 弹出框选择引起回调<27> set(hpush, 'callback' , 'calledit(hedit,hpop,hlist)' ); % 按键引起的回调<28>%将下面的code去comment,然后剪切,另存为calledit.m函数% function calledit(hedit,hpop,hlist)% ct=str2num(get(hedit, 'string' )); % 获得输入的字符串函数<2>% vpop=get(hpop, 'value' ); % 获得选项的位置标识<3>% vlist=get(hlist, 'value' ); % 获得选项位置向量<4>% if ~isempty(ct) % 可编辑框输入非空时<5>% eval('ct') % 运行从编辑文本框送入的指令<6>% popstr={ 'spring' , 'summer' , 'autumn' , 'winter' }; % 弹出框色图矩阵<7>% liststr={ 'grid on' , 'box on' , 'hidden off' , 'axis off' }; % 列表框选项内容<8> % invstr={ 'grid off' , 'box off' , 'hidden on' , 'axis on' }; % 列表框的逆指令<9> % colormap(eval(popstr{vpop})) % 采用弹出框所选色图<10>% vv=zeros(1,4);vv(vlist)=1;% for k=1:4% if vv(k);eval(liststr{k}); else eval(invstr{k}); end % 按列表选项影响图形% end% end。
MatlabGUI图形用户界面设计[1]
在命令窗口输入命令或点击工具栏中的图标都可以打开空白的布局编辑器,在命令窗口输入 可打开一个已存在的名为图形用户界面。
① 将控件对象放置到布局区
用鼠标选择并放置控件到布局区内; 移动控件到适当的位置; 改变控件的大小; 选中多个对象的方法。
在设计窗口中显示的结果是不一样的。
图形用户界面设计 窗口由菜单栏、工具栏、 控件工具栏以及图形对 象设计区等4个功能区 组成。
左图为空白 模板情形
设计窗口的菜单栏 有、、、、和 6个菜单 项,使用其中的命令可 以完成图形用户界面的 设计操作。
编辑工具在菜单栏的下方,提供了常用的工具;设计工具区位于窗口的左半部分,提供了 设计过程中所用的用户控件;空间模板区是网格形式的用户设计的空白区域。
菜单编辑器左上角的第四个与第五个按钮用于对选中的菜单进行左移与右移,第六与第七 个按钮用于对选中的菜单进行上移与下移,最右边的按钮用于删除选中的菜单。
5. 对象浏览器( ) 利用对象浏览器,可以查看当前设计阶段的各个句柄图形对象。可以在对象浏览器中选中
一个或多个控件来打开该控件的属性编辑器。
对象浏览器的打开方式有: ① 从设计窗口的工具栏上选择 命令按钮; ② 选择菜单下的 子菜单; ③ 在设计区域单击鼠标右键,选择弹出菜单
对象位置调整器中的第一栏是垂直方向的位置调整,第二栏是水平方向的位置调整。 在选中多个对象后,可以方便的通过对象位置调整器调整对象间的对齐方式和距离。
3. 用属性查看器设置控件属性 利用对象属性查看器,可以查看每个对象的属性值,也可以修改、设置对象的属性值。
① 打开属性查看器( ) 对象属性查看器的打开方式有四种: 从设计窗口工具栏上选择 命令按钮;
matlab GUI之对话框
matlab GUI之对话框创建Matlab GUI界面通常有两种方式:1,使用.m 文件直接动态添加控件2. 使用GUIDE 快速的生成GUI界面显然第二种可视化编辑方法算更适合写大型程序。
一:创建GUI1.在.m文件中动态添加例如h_main=figure(‘name’,‘a demo of gui design’,‘menubar’,‘none’,…'numbertitle','off','position',[100 100 300 100]);h_edit=uicontrol('style','edit','backgroundcolor',[1 1 1],'position',[20 20 50 20],...'tag','myedit','string','1','horizontalalignment','left');h_but1=uicontrol('style','pushbutton','position',[20 50 50 20],'string','INC',...'callback',['v=eval(get(h_edit,''string''));',...'set(h_edit,''string'',int2str(v+1));']);h_but2=uicontrol('style','pushbutton','position',[80 50 50 20],'string','DEC',...'callback',['v=eval(get(h_edit,''string''));','set(h_edit,''string'',int2str(v-1));']);2.使用GUIDE帮助创建GUI在Command 里面输入GUIDE 或者从菜单里面,或者从快捷按钮均可进入GUIDE新建并且保存后,会生成相应的fig文件和m文件,在Layout编辑视图,可以使用如下工具:Layout Editor:布局编辑器;Alignment Tool:对齐工具;Property Inspector:对象属性观察器;Object Browser:对象浏览器;Menu Editor:菜单编辑器。
matlab的撤回操作gui界面设计
matlab的撤回操作gui界面设计
1. 界面布局:使用MATLAB的GUI设计器,将界面划分为两个区域。
左侧区域放置撤回操作的相关控件,右侧区域用于显示操作结果。
2. 控件选择:在左侧区域添加以下控件:
- 撤回按钮:用户点击该按钮执行撤回操作。
- 撤回提示标签:用于显示当前可以撤回的操作次数或提示用户。
- 撤回列表:用于显示可以撤回的操作记录,可以使用ListBox或Table控件来展示。
- 撤回确认对话框:在点击撤回按钮后,弹出对话框提示用户确认是否撤回。
3. 控件交互:
- 用户点击撤回按钮后,首先检查是否有可撤回的操作记录。
如果没有,更新撤回提示标签的提示信息。
- 如果存在可撤回的操作记录,则在撤回确认对话框中提示用户是否确认进行撤回。
用户点击确认后执行撤回操作,并在撤回列表中删除该记录。
- 在撤回列表中点击某条操作记录,可以显示该操作的详细信息。
4. 右侧区域处理:
- 在右侧区域显示操作结果,如撤回成功或失败的提示信息。
5. 界面美化:根据需求进行合适的颜色、字体和布局调整,增加界面的可读性和美观性。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MATLAB GUI对话框设计2010-12-18 15:13:24| 分类:Linux | 标签:对话框 matlab gui 编程界面|举报|字号大中小订阅dialog 创建对话框errordlg 创建错误对话框helpdlg 创建帮助对话框inputdlg 创建输入对话框listdlg 创建选择列表对话框msgbox 创建消息对话框pagedlg 显示页面的版面对话框printdlg 显示打印对话框questdlg 问题对话框uigetfile 文件检索对话框uiputfile 为写入而显示的检索对话框uisetcolor 从对话框交互式设置对象的ColorSpecuisetfont 交互设置对象字体特征warndlg 警告对话框*对话框设计:在图形用户界面程序设计中,对话框是重要的信息显示和获取输入数据的用户界面对象。
1、公共对话框:公共对话框是利用windows资源的对话框,包括文件打开、文件保存、颜色设置、字体设置、打印设置等。
1) 文件打开对话框:用于打开文件uigetfileuigetfile(‘FilterSpec’)uigetfile(‘FilterSpec’,’DialogTitle’)uigetfile(‘FilterSpec’,’DialogTitle’,x,y)[fname,pname]=uigetfile(…)2) 文件保存对话框:用于保存文件uiputfileuiputfile(‘InitFile’)uiputfile(‘InitFile’,’DialogTitle’)uiputfile(‘InitFile’,’DialogTitle’,x,y)[fname,pname]=uiputfile(…)3) 颜色设置对话框:用于图形对象颜色的交互设置c=uisetco lor(‘h_or_c,’DialogTitle’)4) 字体设置对话框:用于字体属性的交互式设置uisetfontuisetfont(h)uisetfont(S)uisetfont(h,’DialogTitle’)uisetfont(S,’DialogTitle’)S=uisetfont(…)5)打印设置对话框:用于打印页面的交互式设置dlg=pagesetupdlg(fig)pagedlgpagedlg(fig)6) 打印预览对话框:用于对打印页面进行预览printpreviewprintpreview(f)7) 打印对话框:printdlgprintdlg(fig)printdlg(‘-crossplatform’,fig)printdlg(-‘setup’,fig)2、MATLAB专用对话框1)错误信息对话框:用于提示错误信息errordlg 打开默认的错误信息对话框errordlg(‘errorstring’) 打开显示’errorstring’信息的错误信息对话框errordlg(‘errorstring’,’dlgname’) 打开显示’errorstring’信息的错误信息对话框,对话框的标题由‘dlgname’指定erordlg(‘errorstring’,’dlgname’,’on’) 打开显示’errorstring’信息的错误信息对话框,对话框的标题由‘dlgname’指定. 如果对话框已存在,’on’参数将对话框显示在最前端。
h=errodlg(…)返回对话框句柄例:errordlg('输入错误,请重新输入','错误信息')2) 帮助对话框:用于帮助提示信息helpdlg 打开默认的帮助对话框helpdlg(‘helpstring’)打开显示’errorstring’信息的帮助对话框,helpdlg(‘helpstring’,’dlgname’) 打开显示’errorstring’信息的帮助对话框, 对话框的标题由‘dlgname’指定h=helpdlg(…)返回对话框句柄例:helpdlg('矩阵尺寸必须相等','在线帮助')3) 输入对话框:用于输入信息answer=inputdlg(prompt) 打开输入对话框,prompt为单元数组,用于定义输入数据窗口的个数和显示提示信息,answer为用于存储输入数据的单元数组。
answer=inputdlg(prompt,title) 与上者相同,title确定对话框的标题。
answer=inputdlg(prompt,title,lineNo) 参数lineNo可以是标量、列矢量或m×2阶矩阵,若为标量,表示每个输入窗口的行数均为lineNo;若为列矢量,则每个输入窗口的行数由列矢量lineNo的每个元素确定;若为矩阵,每个元素对应一个输入窗口,每行的第一列为输入窗口的行数,第二列为输入窗口的宽度。
answer=inputdlg(prompt,title,lineNo,defAns) 参数defans为一个单元数组,存储每个输入数据的默认值,元素个数必须与prompt 所定义的输入窗口数相同,所有元素必须是字符串。
answer=inputdlg(prompt,title,lineNo,defAns,Sesize) 参数resize决定输入对话框的大小能否被调整,可选值为on或off.例:prompt={'Input Name','Input Age'};title='Input Name and Age';lines=[2 1]';def={'John Smith','35'};answer=inputdlg(prompt,title,lines,def);4) 列表选择对话框:用于在多个选项中选择需要的值[selection,ok]=listdlg(‘Liststring’,S,…) 输出参数selection为一个矢量,存储所选择的列表项的索引号,输入参数为可选项’Liststring’(单元数组), ’SelectionMode’(’single’或’multiple’,’ListSize’([wight,height]),’Name’ (对话框标题)等5) 信息提示对话框:用于显示提示信息msgbox(message) 打开信息提示对话框,显示message信息。
msgbox(message,title) title确定对话框标题。
msgbox(message,title,’icon’) icon用于显示图标,可选图标包括:none(无图标)/error/help/warn/custom(用户定义)msgbox(message,title,’custom’,icondata,iconcmap) 当使用用户定义图标时,icondata为定义图标的图像数据,iconcmap为图像的色彩图。
msgbox(…,’creatmode’)选择模式creatmode,选项为:modal, non_modal, 和replace。
h=msgbox(…)返回对话框句柄6) 问题提示对话框:用于回答问题的多种选择button=qu estdlg(‘qstring’) 打开问题提示对话框,有三个按钮,分别为:yes,no和cancel,’questdlg’确定提示信息。
button=questdlg(‘qstring’,’title’) title确定对话框标题。
button=questdlg(‘qstring’’title’,’default’) 当按回车键时,返回default值default 必须是yes,no或cancel 之一。
button=questdlg(‘qstring’,’title’,’str1’,’str2’,’default’) 打开问题提示对话框,有两个按钮,分别由str1和str2确定,’qstdlg’确定提示信息,default必须是str1或str2之一。
button=questdlg(‘qstring’, ’title’,’str1’,’str2’,’str3’,’default’) 打开问题提示对话框,有三个按钮,分别由str1,str2和str3确定,’qstdlg’确定提示信息,default必须是str1, str2或str3之一。
7) 进程条:以图形方式显示运算或处理的进程h=waitbar(x,’title’)显示以title为标题的进程条,x为进程条的比例长度,其值必须在0到1之间,h为返回的进程条对象的句柄。
waitbar(x,’title’,’creatcancelbtn’,’button_callback’) 在进程条上使用creatcancelbtn参数创建一个撤销按钮,在进程中按下撤销按钮将调用button_callback函数。
waitbar(…,property_name,property_value,…) 选择其它由prompt_name定义的参数,参数值由prompt_value指定。
例:h=waitbar(0,'pleas wait...');for i=1:10000waitbar(i/10000,h)endclose(h)MATALB的标准图形用户界面1. 消息对话框msgbox函数。
它不接受用户的任何输入,在用户单击OK按钮后,对话框自动关闭,然后返回程序中继续执行。
>> msgbox('欢迎使用MATLAB') % 建立一个没有标题的消息对话框>> msgbox('欢迎使用MATLAB','MATALB','warn') %% 建立一个有标题的消息对话框2. 错误对话框errordlg函数。
>> errordlg %建立一个默认参数的错误对话框>> errordlg('这是一个错误对话框','MATLAB error') %建立一个名为MATLAB error的错误对话框3. 警告对话框warndlg函数。
>> warndlg %建立一个默认参数的警告对话框>>warndlg('这是一个警告对话框','MATLAB warning')4. 帮助对话框helpdlg函数。
>> helpdlg('你需要帮助吗?','MATLAB Help')5. 进度条设置对话框waitbar函数。
作用是反映程序运行的完成情况。