MATLAB GUI简易计算器Word文档下载推荐.docx
- 文档编号:15352176
- 上传时间:2022-10-29
- 格式:DOCX
- 页数:16
- 大小:59.28KB
MATLAB GUI简易计算器Word文档下载推荐.docx
《MATLAB GUI简易计算器Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《MATLAB GUI简易计算器Word文档下载推荐.docx(16页珍藏版)》请在冰豆网上搜索。
1绪论
用户界面(或接口)是指:
人与机器(或程序)之间交互作用的工具和方法。
如键盘、鼠标、跟踪球、话筒都可成为与计算机交换信息的接口。
图形用户界面(GraphicalUserInterfaces,GUI)则是由窗口、光标、按键、菜单、文字说明等对象(Objects)构成的一个用户界面。
用户通过一定的方法(如鼠标或键盘)选择、激活这些图形对象,使计算机产生某种动作或变化,比如实现计算、绘图等。
2GUI开发环境
GUI开发环境(GUIDevelopmentEnvironment,GUIDE)是MATLAB提供了一套可视化的创建图形窗口的工具,使用用户界面开发环境可方便的创建GUI应用程序,它可以根据用户设计的GUI布局,自动生成M文件的框架,用户使用这一框架编制自己的应用程序。
GUI开发环境界面如下图所示:
3.设计目的
运用MATLAB实现GUI的用户界面及程序设计。
4题目分析
4.1程序设计的基本要求
●熟悉和掌握MATLAB程序设计方法
●掌MATLABGUI程序设计
4.2设计内容
要求利用MATLABGUI设计实现一个图形用户界面的简易计算器程序,要求实现:
具有良好的用户图形界面,实现十进制的加、减、乘、除、乘方等简易计算。
科学计算函数,包含开方、三角函数运算功能
有清除键和退格键以及基本的0~9数字键和小数点
4.3题目分析
本题目通过MATLAB的GUI程序设计,在GUI设计中主要用到三种控件,显示框用到文本编辑框(edittext),说明框用到静态文本框(statictext),数字以及运算等按钮用到命令按钮(pushbutton).然后在通过各个按钮的回调函数,实现简单的计算功能。
4.4设计思路
首先用MATLABGUI功能,设置一个静态文本框和一个文本编辑框,以及命令按钮,调整好各控件的颜色、大小。
通过双击各按钮来改写其属性,在M文件中编写其回调函数,最后再运行调试。
5GUI程序设计
5.1、设计图形界面
设计步骤:
(1)在布局编辑器中布置控件,
(2)使用几何位置排列工具对控件的位置进行调整;
(3)设计控件的属性;
GUI环境下简易计算器用户界面如下图所示:
5.2设置控件的标识
控件的标识(Tag)是对于各控件的识别,每个控件载创建时都会由开发环境自动产
生一个标识,在程序设计中,为了编辑、记忆和维护的方便,一般为控件设置一个新的标识。
5.3各功能模块实现
GUI图形界面的功能要通过一定的设计思路和计算方法由特定的程序来实现。
为了实现程序的功能,还需要在运行程序前编写一些代码,完成程序中变量的赋值、输入输出、计算及绘图等工作。
在创建GUI时系统已经为其自动生成了M文件,该文件中包含GUI中控件对应的响应函数,及系统函数等。
部分具体函数代码及相关注释:
●数字键设计:
0~9以及小数点都一样,只是参数不同:
%全局变量locaval用于存储用户输入的多位数值
%全局变量gloval2用于存储待处理的第二位数值
functionpushbutton0_Callback(hObject,eventdata,handles)
globallocaval;
a=get(handles.pushbutton1,'
String'
);
locaval=strcat(locaval,a);
set(handles.text1,'
locaval);
globalgloval2
gloval2=locaval;
guidata(hObject,handles);
●运算符按钮处理“+、-、*、/”范例
%全局变量flagnum存储运算符标志
%全局变量global1用于储存第一个待处理数值
functionpushbutton_chu_Callback(hObject,eventdata,handles)
a=get(handles.pushbutton10,'
b=get(handles.text1,'
a);
globalflagnum
globalgloval1
globallocaval
locaval='
'
;
flagnum=1;
gloval1=b;
●等号按钮运算实现
%根据flagnum运算标志用switch决策语句实现相应计算
%需注意相应数据类型的转化
functionpushbutton_dengyu_Callback(hObject,eventdata,handles)
gloval1=str2num(gloval1);
gloval2=str2num(gloval2);
case1=gloval1/gloval2;
case2=gloval1*gloval2;
case3=gloval1-gloval2;
case4=gloval1+gloval2;
case1=num2str(case1);
case2=num2str(case2);
case3=num2str(case3);
case4=num2str(case4);
switchflagnum;
case1
set(handles.text1,'
case1);
case2
case2);
case3
case3);
case4
case4);
end
guidata(hObject,handles)
●Del按钮函数
%算法实现:
MATLAB是用矩阵存储数据的,相应的可以取文本框的前N-1实现其功能
functionpushbutton_BackSpace_Callback(hObject,eventdata,handles)
textString=get(handles.text1,'
if(strcmp(textString,'
0.'
)==1)
'
);
else
ss=char(textString);
l=length(textString);
textString=ss(1:
l-1);
textString)
●C清除按钮函数
%把全局变量locaval清零
functionpushbutton_qinglin_Callback(hObject,eventdata,handles)
6结果分析
6.1最终显示界面效果图:
上述简易计算器用户界面,能完成简单的四则运算及四则混合运算功能。
通过实际操练结果均与实际结果相吻合,能实现基本的功能。
7心得体会
通过本次的MATLAB设计,让我对MATLAN尤其是GUI可视化图形界面的设计功能有了进一步的了解,认识到其功能的强大。
在MATLAB简单计算器的设计中,了解了关于MATLAB图形用户界面的部分空间的使用方法,利用MATLAB的GUI提供的很多实用控件,方便用于设计自己的图形界面。
1、通过MATLAB简单计算器的设计,初步了解了关于MATLAB图形用户界面的部分控件的使用方法。
2、MATLAB的GUI提供的很多实用的控件,方便用于设计属于自己的图形界面。
3、Matlab具有强大、丰富的内置函数和工具箱,界面设计时更加简洁、快捷与直观。
参考书目
[1]李人厚、张平安.精通MATLAB综合辅导与指南[M].西安:
西安交通大学出版社.1999
[2]张智星.MATLAB程序设计与应用[M].北京:
清华大学出版设.2002.4.1
[3]施晓红周佳。
精通GUI图形界面教程[M].北京:
北京大学出版社,2003.
[4]陈子为。
基于MatlabGUI扫雷游戏的设计与实现[J].现代电子技术,2008.
附录
仿真一个四则混合运算
界面如下:
程序源代码
functionvarargout=calculator(varargin)
%我的计算器,重要运用了文本框和按钮。
__
gui_Singleton=1;
gui_State=struct('
gui_Name'
mfilename,...
gui_Singleton'
gui_Singleton,...
gui_OpeningFcn'
@calculator_OpeningFcn,...
gui_OutputFcn'
@calculator_OutputFcn,...
gui_LayoutFcn'
[],...
gui_Callback'
[]);
ifnargin&
&
ischar(varargin{1})
gui_State.gui_Callback=str2func(varargin{1});
ifnargout
[varargout{1:
nargout}]=gui_mainfcn(gui_State,varargin{:
});
gui_mainfcn(gui_State,varargin{:
functioncalculator_OpeningFcn(hObject,eventdata,handles,varargin)
handles.current_str='
'
%此为存储当前的字符串。
%Choosedefaultcommandlineoutputforcalculator
handles.output=hObject;
%Updatehandlesstructure
%UIWAITmakescalculatorwaitforuserresponse(seeUIRESUME)
%uiwait(handles.figure1);
%---Outputsfromthisfunctionarereturnedtothecommandline.
functionvarargout=calculator_OutputFcn(hObject,eventdata,handles)
va
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB GUI简易计算器 GUI 简易 计算器