失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > MATLAB GUI制作快速入门

MATLAB GUI制作快速入门

时间:2022-02-27 19:48:24

相关推荐

MATLAB GUI制作快速入门

MATLAB Ra GUI制作详细流程

创建空白的GUI制作GUI的具体过程简单加法器导入EXCEl数据GUI中显示上述数据弹出式菜单的简要介绍 结束语

创建空白的GUI

在MATLAB命令行中输入guide新建GUI,选择Blank GUI (Default),点击确定后就生成了一个空白的GUI制作界面,如下图所示图1

制作GUI的具体过程

简单加法器

可编辑文本拖入界面中双击可编辑文本,在String栏中可以修改相应的文字,Tag栏是相当于给每个文本的一个标记,在后面的输入输出环节作用非常大。将静态文本拖入界面中,双击它,同样可以在String栏中修改文本内容;同理,将按钮拖入界面中,修改其String运行,它的作用相当于运行程序的开关。点击菜单栏中的对齐对象,选中界面中的相应组件,调整布局得到如下结果图2前两个可编辑文本为输入,后一个为输出,选中运行,单击鼠标右键,选择查看回调里的Callback,在pushbuttonX_Callback函数下编写如下语句(这里X表示你具体在运行Tag中设置的是多少)

global a1;global a2;global a3;a1 = str2double(get(handles.edit1,'String'));a2 = str2double(get(handles.edit2,'String'));a3 = a1 + a2;set(handles.edit3,'String',a3);

在GUI界面中点击菜单栏的运行图形,在前两个可编辑文本中输入数据,点击运行,得到结果如下

图3

PS:

1、其实GUI制作并不复杂,理论上你编写的任何m程序都可以打包成一个GUI,只需要你解决输入参数以及结果输出的问题。

2、在编写程序时,发现在某个函数A下定义一个全局变量s,想在另一个函数B下使用它,必须在函数B下重新s为全局变量(下文将会继续提到)。

导入EXCEl数据

MATLAB是一款处理数据的利器,在实际过程中,可能需要向GUI中导入数据,下面将详细介绍:

需要导入的数据如图:图4将按钮拖入界面中,修改String导入数据,选中它,单击鼠标右键→查看回调→Callback,在pushbuttonX_Callback函数中编写如下语句。

global sj;[fname_od,pname_od] = uigetfile('.xlsx','请选择您想导入的数据’);if fname_od == 0returnendstr = fullfile(pname_od,fname_od);[num,txt,sj] = xlsread(str); %下面语句的作用是删除数据第一行sj(1,:) = [];sj = cell2mat(sj);%导入进来的是一个元胞数组,需要转换成矩阵

上述代码中,可以根据自己的实际需求做出相应修改,如文件格式为xls,则在uigetfile中可将xlsx改为xls

GUI中显示上述数据

在GUI界面中拖入,此时它的Tag应该是uitable1,选中它,单击鼠标右键→查看回调→CreateFcn在uitableX_CreateFcn函数输入如下程序:

DATA = {0,0,0,0,0,0}%表格的初始值 set(hObject,'ColumnName',{'语文','数学','英语','物理’,'化学’,'生物'},'data',DATA,...'ColumnEditable',true);%设置表格的栏目名

在GUI界面中,点击菜单栏中的运行图形,调整布局后,得到如图结果:图5选中运行按钮,点击鼠标右键→查看回调→Callback,继续在pushbuttonX_Callback函数下编写如下语句

global sj;%此处就是上文中提到的再一次定义全局变量set(handles.uitable1,'data',sj);

在GUI界面中,点击运行图形,在可编辑文本中输入数据,单击导入数据按钮,弹出的界面如图图6选择上述数据的EXCEL文件,再点击运行按钮,可以得到如下结果图7上面的步骤虽然只是讲述了如何将数据导入GUI,并通过GUI将原数据导出,但是通过上述方法,你可以对导入的数据进行相关处理后,根据实际的需要将结果输出。

弹出式菜单的简要介绍

下拉菜单是GUI中常见的组件,下面对其使用方法进行相关介绍

弹出式菜单拖入GUI界面,双击它,在String栏中点击小正方形,在里面输入你需要的内容,如图

图8选中弹出式菜单查看回调Callback,在popupmenuX_Callback函数中输入如下代码

global a4;val = get(handles.popupmenu1,'value');switch valcase 1a4 = 0;case 2a4 = 5;case 3a4 = 9;case 4a4 = 15;end

选中运行查看回调Callback,在pushbuttonX_Callback函数下编写如下语句

global a1; global a2; global a3; global a4;a1 = str2double(get(handles.edit1,'String'));a2 = str2double(get(handles.edit2,'String'));a3 = a1 + a2 + a4;set(handles.edit3,'String',a3);global sj;set(handles.uitable1,'data',sj);

在GUI菜单栏中点击运行图形,在下拉菜单中选择你所要的数据

在文本中输入数据,并按照上述过程导入你想要处理的数据,点击运行按钮,得到如下结果

图9

结束语

上述内容是自己在做项目的时候,查阅相关资料所总结出来的一些经验。由于能力有限,上述内容难免会有疏漏和错误,欢迎各位大佬批评指正。

如果觉得《MATLAB GUI制作快速入门》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。