• matlabgui界面设计实例
2021-04-20 09:39:02

《Matlab的gui界面设计实例练习》由会员分享，可在线阅读，更多相关《Matlab的gui界面设计实例练习(5页珍藏版)》请在人人文库网上搜索。

1、一个不错的Matlab的gui界面设计实例%非常漂亮的日历， function CalendarTable;% calendar 日历% Example:% CalendarTable;S=datestr(now);y,m,d=datevec(S);% d is day% m is month% y is yearDD=Sun,Mon,Tue,Wed,Thu,Fri,Sat;close allfigure;for k=1:7;uicontrol(gcf,style,text,.unit,normalized,position,0.02+k*0.1,0.55,0.08,0.06,.Backgro。

2、undColor,0.6*1,1,1,ForegroundColor,b,.String,DD(k),fontsize,16,fontname,times new roman);endh=1;ss=b;qq=eomday(y,m);for k=1:qq;n=datenum(y,m,k);da,w = weekday(n);if k=d;ss=r;enduicontrol(gcf,style,push,.unit,normalized,position,0.02+da*0.1,0.55-h*0.08,0.08,0.06,.BackgroundColor,0.6*1,1,1,ForegroundC。

3、olor,ss,.String,num2str(k);ss=b;if da=7;h=h+1;endenduicontrol(gcf,style,push,.unit,normalized,position,0.6,0.66,0.12,0.08,.BackgroundColor,0.6*1,1,1,ForegroundColor,ss,.String,clock,fontsize,18,fontname,times new roman);Tq=uicontrol(gcf,style,push,.unit,normalized,position,0.74,0.66,0.17,0.08,.Backg。

4、roundColor,0.6*1,1,1,ForegroundColor,0.1,0.9,0.9,.fontsize,18,fontname,times new roman);sq=The calendar;uicontrol(gcf,style,push,.unit,normalized,position,0.14,0.86,0.37,0.08,.BackgroundColor,0.6*1,1,1,ForegroundColor,0.1,0.9,0.9,.fontsize,18,fontname,times new roman,string,sq);trywhile 1set(Tq,Stri。

5、ng,datestr(now,13);pause(1);endend计算万年历的Matlab程序(2008-12-21 13:59:19)标签：matlab万年历杂谈 分类：Matlab实例function test_calendar(year,month)% 输入年份，月份，打印这个月的月历run = 0;ping = 0;fprintf(n%s %s %s %s %s %s %sn,.日,一,二,三,四,五,六);% 计算从第一年到前一年的闰年和平年的个数for i =1:year-1if (mod(i,4)=0 & mod(i,100)=0) | mod(i,400)=0run = ru。

6、n+1;elseping = ping+1;endend% 计算从第一年到当年前一个月的天数sum = 366*run+365*ping;for i = 1:month-1sum = sum+monthday(year,i);end% 获得这个月的天数n = monthday(year,month);temp = zeros(n,1);sum = sum+1;% 计算这个月第一天是星期几wkd = mod(sum,7);for i = 1:ntemp(wkd+i) = i;endl = 1;m = 1;% 打印日历for i = 1:length(temp)if temp(i) =0temp2。

7、(l,m) = ;fprintf( );m = m+1;elsetemp2(l,m) = temp(i);if temp(i) = 10fprintf(%d ,temp(i);elsefprintf(%d ,temp(i);endm = m+1;endif mod(i,7)=0fprintf(n);m = 1;l = l+1;endendfprintf(n);% 闰年和平年每月的天数function out = monthday(year,i)if mod(year,4)=0 & mod(year,100)=0 | mod(year,400)=0data = 31 29 31 30 31 30。

8、 31 31 30 31 30 31;elsedata = 31 28 31 30 31 30 31 31 30 31 30 31;endout = data(i);举例：输入： test_calendar(2008,12)返回：日 一 二 三 四 五 六1 2 3 4 5 67 8 9 10 11 12 1314 15 16 17 18 19 2021 22 23 24 25 26 2728 29 30 31闲来无事，学了一些Matlab GUI的基础知识，想找个东西练一下手。看中了windows的日期与时间显示面板，于是依葫芦画瓢，用Matlab 做了一个，嘿嘿，觉得还挺像模像样的。下面是效果图。今日进一步完成了农历的计算和显示。

更多相关内容
• Matlab GUI登录界面设计！欢迎下载！
• 一个实例搞定MATLAB GUI界面编程 共15页.pdf
• matlab GUI 界面编程示例 （CS实验平台）
• GUI设计实例1介绍实例1结束更多...首先按上篇的介绍，新建个GUI设计，然后在界面中添加一个坐标轴和两个按钮，并使用菜单栏中的“对齐对象”对齐控件的边缘，摆好后的效果： 对齐对象的工具使用方法很简单，先选中需

# 介绍

上一篇对GUI的设计有了简单的了解，也对控件有了了解，但是控件的搭建只是类似于绘制了一个架构，但是具体的架构内容还没有进行设计，所以还需要编写M文件来实现控件之间的交互。

其他过于理论的东西就不多述了，直接举个简单的实例，对整体的GUI设计流程便能够有个清晰的认识了。

# 实例1

首先按上篇的介绍，新建个GUI的设计，然后在界面中添加一个坐标轴和两个按钮，并使用菜单栏中的“对齐对象”对齐控件的边缘，摆好后的效果：

对齐对象的工具使用方法很简单，先选中需要对齐的控件，然后按图例中的样子，实现控件的摆放，分布选项需要勾选设置间距的框，然后设定具体的分布位置等，还不太懂的话，自行操作下，就知道意思了。

接着开始设计内容，更改按钮的“tag”和“string”属性

第二个按钮分别设置为“rotate”和“旋转”，都设置好后的样子

点保存，对应的EX1.m文件会自动创建控件的函数，即回调函数

开始准备代码的编辑，找到XX_OpeningFcn的函数，在最后一行加上

set(handles.rotate,'Enable','off');


实现功能：在GUI刚运行时，关闭旋转按钮的功能，使用句柄的形式操作，rotate就是旋转按钮的tag值，也是旋转按钮的唯一标识。

然后编写绘图函数下的代码，绘制一只“蝴蝶”……

axes(handles.axes1);%链接到绘图坐标轴上
theta=0:0.01:2*pi;
rho=sin(2*theta).*cos(1.5*theta);
polar(theta,rho,'.r');
AZ = 90;
EL = 90;
view(AZ,EL);
set(handles.rotate,'Enable','on');


其中，【set(handles.rotate,‘Enable’,‘on’);】是为了使能旋转按钮

绘图函数设计好后，接着用旋转按钮设计一个旋转的功能函数

axes(handles.axes1);%链接到同一个绘图坐标轴上
EL = 90;
for AZ=90:1:450
view(AZ,EL);
drawnow;
end


在两个回调函数中，链接到了同一个axes1坐标轴，从而实现一个绘图，一个对当前图形旋转的功能。

都设计好之后，点保存，然后便可以运行了，可以在运行时修改代码进行调试；

最后再加个菜单来表明下信息……

都设计好后，就可以运行程序看效果了！！！

1、Run

2、绘图

3、旋转

这是个动态旋转的功能，为了省事，就随便截了个运行时的图。

4、Help

# 结束

本篇的简单实例就到此结束了，后面会再搞一两个复杂些的实例，进行进阶，感觉会更有意思些~

需要参考本篇实例的朋友可以在下方根据关键字获取下载链接，也可直接CSDN自行下载~

## 自行下载

展开全文
• 登录界面实例说明。。。。。。。。。。。。。。
• ## MATLABGUI设计快速入门实例

万次阅读 多人点赞 2019-11-27 10:47:15
为了实现课题的一个功能，需要设计一个图形界面，因此使用matlab GUIDE进行设计，但前期没有接触过，因此通过实例练习，理解MATLAB gui设计相关知识。 一、几个GUI设计需要了解的知识 1、进入GUI 设计界面：在命令行...

时间：2019.11.27
目的： 课题需要设计一个界面
为了实现课题的一个功能，需要设计一个图形界面，因此使用matlab GUIDE进行设计，但前期没有接触过，因此通过实例练习，理解MATLAB gui设计相关知识。

## 一、几个GUI设计需要了解的知识

1、进入GUI 设计界面：在命令行输入guide，创建一个空白的GUI，保存即可，在保存目录下会生成两个文件（.fig和.m）。然后进入编辑界面，如图所示：

2、在界面中有许多GUI 设计对象（按钮、滑动条等），选取相应的图表，往右侧编辑区域拉即可。相关功能的自定义可右键对象（如按钮），选择回调函数，进入.M文件，通过编写程序实现。
3、几个重要的参数，在.m文件中，回调函数一般有4个参数，handles你可以认为是所有图标的结构体，而hObject则是结构体中的成员。其他相关知识可通过一下实例进行练习。

## 二、实例代码

在这里插入代码片
function varargout 
展开全文
• 【例10.1-1】对于传递函数为的归一化二阶系统，制作一个能绘制该系统单位阶跃响应的图形用户界面。本例演示：（A）图形界面的大致生成过程；（B）静态文本和编辑框的生成；（C）坐标网格控制键的形成；（D）如何使用...
• GUI设计实例2简介功能介绍设计解析更新设置（Tag:Update）【菜单】文件项【菜单 】2D绘制项【菜单 】3D绘制项【菜单 】帮助项结果展示GUI游戏分享结束更多精彩，等你发现~ 简介 有了实例1的学习，大家也掌握基本的...

# 简介

有了实例1的学习，大家也掌握基本的使用了，本篇再详细介绍一个GUI的设计，再分享一些网上找到的别人设计的GUI小游戏~

有想法的可以自己迸发灵感时玩玩这些设计，需要参考涉及的设计源码就自行在文末获取了~

# 功能介绍

先看实例2的运行效果

界面比较简陋，就直接先描述下它的一些功能吧

1、菜单栏中的功能，分别有

File：用于打开fig文件，打印当前Figure，关闭EX2的界面

Plot 2D和3D：分别在图形显示窗口显示对应的2D或3D图形，会对应在图形选择和图形设置部分显示对应的类型。

Help：用于信息显示

2、图形显示部分

用于显示绘制的图形

3、图形选择

可以选择多种图形函数

4、图形设置下包含三个选项

网格开/关：绘出的图形中，是否需要显示网格

线型选择：有正常的line和一个“o”的绘图线型

横轴取值：设置了3个取值范围的选项，即X的范围值，仅使用于2D图形，3D图形下，会关闭该选项和线型选择

5、更新设置

在完成图形选择和图形设置后，点击更新设置，图形显示部分就会更新图形。

# 设计解析

使用到6组静态文本，即一般用于固定信息的显示，当然，你也可以用滚动框之类的s操作~

1个坐标轴，也就是用于图形显示的部分

图上显示的EX2_Show是它的tag值

1个面板，用于框选图形选择和图形设置部分，相对美观那么一丢丢吧。。。

1个按钮，就是更新设置对应的控件，Tag值为：Update

然后就是该GUI设计最重要的一个控件了，弹出式菜单，也就是运行后，可以用于选择结果的东西，总共用到了4组

既然要弹出来，肯定需要先预先设置好可弹的选项了，直接双击放置好的弹出式菜单，然后找到String，点击边上的那个小图框，会出现String的弹窗，在这里一行代表一个选项，使用句柄返回的Value值，则依次是1~5的值；Tag值也是个方便区分的名。

然后就是依次对网格、线型和取值范围进行设置

这些设置好了，就是完善一下菜单的显示了，可以根据自己想法做修改

源码解析

做好界面的设计后，就是对这些控件的回调函数进行编程了，直接根据对应控件的源码作下简单讲解

## 更新设置（Tag:Update）

首先获取4个弹出式菜单选择的内容，然后根据选择的结果，做出对应的结果显示

% --- Executes on button press in Update.
function Update_Callback(hObject, eventdata, handles)
% hObject    handle to Update (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
%% 获取设置信息
v1 = get(handles.Func_Choose,'Value');
v2 = get(handles.Grid,'Value');
v3 = get(handles.Line_Shape,'Value');
v4 = get(handles.Range,'Value');
%% 运行设置选项
switch v4
case 1
t=-pi:pi/50:pi;
case 2
t=-2*pi:pi/50:2*pi;
case 3
t=0:pi/50:4*pi;
end

switch v1
case 3
peaks_Callback(hObject, eventdata, handles);
case 4
cylinder_Callback(hObject, eventdata, handles);
case 5
sphere_Callback(hObject, eventdata, handles);
end
switch v1
case 1
Plot_2D_Callback(hObject, eventdata, handles);
case 2
Plot_2D_Callback(hObject, eventdata, handles);
case 3
Plot_3D_Callback(hObject, eventdata, handles);
case 4
Plot_3D_Callback(hObject, eventdata, handles);
case 5
Plot_3D_Callback(hObject, eventdata, handles);
end
switch v3
case 1
switch v1
case 1
plot(t,sin(t));title('sin(x)-Line');
case 2
plot(t,cos(t));title('cos(x)-Line');
end
xlabel('x');ylabel('y');
case 2
switch v1
case 1
plot(t,sin(t),'o');title('sin(x)-Circle');
case 2
plot(t,cos(t),'o');title('cos(x)-Circle');
end
xlabel('x');ylabel('y');
end
switch v2
case 1
grid on;
case 2
grid off;
end


## 【菜单】文件项

文件项下还包含open、print和close的3个功能，同时关闭弹出式菜单的功能

function file_Callback(hObject, eventdata, handles)
% hObject    handle to file (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
set(handles.Grid,'Enable','off');
set(handles.Line_Shape,'Enable','off');
set(handles.Range,'Enable','off');
set(handles.Update,'Enable','off');

file = uigetfile('*.fig');
if ~isequal(file,0)%非空
open(file);
end

printdlg(handles.figure1);

selection = questdlg(['Close' get(handles.figure1,'Name') '?'],...%提示框信息
['Close' get(handles.figure1,'Name') '...'],...%提示框名称
'Yes','No','Yes');%预选Yes
if strcmp(selection,'No')
return;
end
delete(handles.figure1);


## 【菜单 】2D绘制项

由于Update中已经有了sin和cos图形的绘制，就将图形选择为对应的函数，然后再直接进行了调用Update的回调函数，相当于点了一下“更新设置”的按钮，同时会使能所有弹出式菜单的功能

function Plot_2D_Callback(hObject, eventdata, handles)
% hObject    handle to Plot_2D (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
set(handles.Func_Choose,'Enable','on');
set(handles.Grid,'Enable','on');
set(handles.Line_Shape,'Enable','on');
set(handles.Range,'Enable','on');
set(handles.Update,'Enable','on');

function sinx_Callback(hObject, eventdata, handles)
set(handles.Func_Choose,'Value',1);%选择sin函数
Update_Callback(hObject, eventdata, handles)

function cosx_Callback(hObject, eventdata, handles)
set(handles.Func_Choose,'Value',2);
Update_Callback(hObject, eventdata, handles)


## 【菜单 】3D绘制项

关闭3D图不需要的弹出式菜单功能，分别绘制了peaks、cylinder和sphere的3维图形。

function Plot_3D_Callback(hObject, eventdata, handles)
% hObject    handle to Plot_3D (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
set(handles.Func_Choose,'Enable','on');
set(handles.Grid,'Enable','on');
set(handles.Line_Shape,'Enable','off');
set(handles.Range,'Enable','off');
set(handles.Update,'Enable','on');

function peaks_Callback(hObject, eventdata, handles)
set(handles.Func_Choose,'Value',3);
set(handles.Grid,'Value',1);
[X,Y,Z] = peaks;
surf(X,Y,Z);
xlabel('x');
ylabel('y');
zlabel('z');
% axis equal;
grid on;
title('Peaks');
axis([-3 3 -3 3 -10 10]);

function cylinder_Callback(hObject, eventdata, handles)
set(handles.Func_Choose,'Value',4);
set(handles.Grid,'Value',1);
t=0:pi/20:2*pi;
x=(sin(t)+1)*5;
y=cos(t)*5;
z=linspace(0,5,length(t));
X=meshgrid(x);
Y=meshgrid(y);
Z=[meshgrid(z)]';
surf(X,Y,Z);
xlabel('x');
ylabel('y');
zlabel('z');
axis equal;
grid on;
title('Cylinder');
axis([0 10 -5 5]);
for vt=1:4
view(-37.5,10*vt);
end

function sphere_Callback(hObject, eventdata, handles)
set(handles.Func_Choose,'Value',5);
set(handles.Grid,'Value',1);
sphere;
xlabel('x');
ylabel('y');
zlabel('z');
axis equal;
grid on;
title('Sphere');


## 【菜单 】帮助项

显示信息，并关闭全部弹出式菜单的功能

function help_Callback(hObject, eventdata, handles)
% hObject    handle to help (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
set(handles.Func_Choose,'Enable','off');
set(handles.Grid,'Enable','off');
set(handles.Line_Shape,'Enable','off');
set(handles.Range,'Enable','off');
set(handles.Update,'Enable','off');

% hObject    handle to about (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
helpdlg('Make from WeChat Official Account Platform [DZKR666]!!!!!','更多精彩，等你发现~');
`

# 结果展示

所有用到的回调函数都设置好之后，就可以运行测试效果了，本GUI设计还是有比较多的不足，有想法的你，可以再在此基础上直接修改~

直接展示部分运行的结果

# GUI游戏分享

分享搜罗的三个GUI设计的游戏源码，没有对应的fig…

不过不影响运行~

1、俄罗斯方块

2、拼图

3、围棋

# 结束

关于GUI的使用到此就结篇了，在平常设计的时候，有心情的话，也可以思考思考如何把你现有的脚本设计改成这种GUI的方式，形象化功能的使用。
需要参考本篇实例的朋友可以在下方根据关键字获取下载链接，也可直接CSDN自行下载~

## 自行下载

展开全文
• 一个实例搞定MATLAB界面编程,生动详细深刻的讲解GUI编程，十分钟掌握GUI核心
• 基于Matlab的数字图像gui界面设计 利用Matlab设计了一个图像处理的GUI界面，包括了各种图像处理功能。 一、使用步骤 1.界面设计 在界面设计方面，设有引导界面、教学界面和实验界面。教学界面在上下方设置Text控件，...
• 基于MATLAB的可视化GUI界面设计 GUI界面的打开： 1：打开MATLAB 2：在命令行输入 >>guide 3：选择你所需要创建的GUI，一般为默认 4：通过添加你所需要实现的功能 5：双击2中的功能块，修改该功能（如按钮，...
• 图形用户界面的操作步骤 目录 8.1GU设计向导 8.2编程设计GUI 83图形用户界而设计实例 习题 8.1GU设计向导 8.1.1GUI概述 8.1.2启动 GUIDE 8.1.3 GUIDE提供的控件 本节介绍: 图形用户界面(GUI)的基本概念; GUI开发...
• 《一个实例搞定MATLAB界面编程》——matlab-gui界面编程入门教程
• 下面请跟我一步一步做一个图像处理的程序，如果您坚持做完这个实例，我想 MATLAB 界 面编程对您而言，就没有什么难度了。当然，我这里说的是，您首先要有一定的 MATLAB编程基础。还有，我的 MATLAB 版本是 2008a。在...
• 3、程序名gui_X_M_N表示gui设计中实现X（一般为简写）功能，第M章节的第N个例子的程序代码; 4、其它保存名与书本一致。 运行时，将程序代码放在MATLAB的工作目录中，就可以直接打开文件运行程序（原代码使用MATLAB 7...
• GUI界面设计范例，电信课程设计，有源代码，有PPT讲解
• 用于计算汽车动力性和经济性，基于MATLABGUI界面
• matlab 界面编程，GUI编程，实用资料，喜欢的下载
• matlab gui 界面编程实例 一个实例搞定MATLAB界面编程
• 某个天朗气清的下午，老师给我布置了一个Matlab GUI 界面设计的任务，然后欢天喜地回家结婚去了，留我在美好的假期里继续孤零零地在学校里耕耘。好的，在此先祝贺老师新婚快乐，百年好合。然后咱们开始从零开始，...
• mcc编译就是将一个独立的代码文件编译为独立可执行文件，例如.exe文件，这个文件的运行只需要MATLAB编译器即可，并且在不启动MATLAB的情况下即可直接执行用户编译程序。 采用mbuild进行编译语言设定，具体如下：
• 1 GUI界面推广缘由 建立GUI界面好处： （1）论文里可以继续加一小节，丰富一下； （2）增加了论文的工作量，做出了一点实物； （3）演示程序的时候使用简单明了而且高大上； （4）GUI界面做起来很简单，完全能符合您...
• MATLAB 全代码界面编程实例，搜集与Matlab官网，可为广大学者提供帮助。
• 一个不错的 Matlabgui 界面设计实例 %非常漂亮的日历 function CalendarTable; % calendar 日历 % Example: % CalendarTable; S=datestr(now; [y,m,d]=datevec(S; % d is day % m is month % y is year DD={'Sun...
• 本文基于MATLAB图像用户界面(GUI)和图像处理工具箱设计实现了一款图像处理系统,该系统可实现图像的运算、变换、分割、改善、形态学处理、压缩编码等内容,并通过综合实例阐述了本系统在图像识别中的应用,使图像处理...
• MATLAB GUI设计学习手记(第2版)》在第1版的基础上，完善了全书知识结构，突出了gui设计重点，对读者经常遇到的38个问题作了透彻的解答，并提炼出13个专题作了详尽的介绍，最后配以长达17．5小时的免费视频教程对书...
• GUI上位机实例，快速上手，有界面和m程序文件
• ## MATLAB：简单GUI的设计流程

万次阅读 多人点赞 2018-12-18 10:42:02
下面来介绍一下关于MATLAB中如何设计个性化GUI界面的流程： 1、首先打开MATLAB软件如下： 2、在 主页下的“新建”选项中选择新建一个图形用户界面（GUI），结果如下： 3、这是我们选择第一个“Blank GUI...
• ## MATLAB-GUI登录界面

千次阅读 多人点赞 2021-01-22 10:46:08
GUI登录界面总体设计Logo更改和名称显示背景图片更改实现密码隐藏页面切换与登录用户名可编辑文本框退出系统参考博主可执行文件下载地址 总体设计 Logo更改和名称显示 功能 ： 实现右上角的图标更改和名称显示。 ...

...

matlab 订阅