基于MATLABGUI的简单计算器文档格式.docx

上传人:b****4 文档编号:15984528 上传时间:2022-11-17 格式:DOCX 页数:29 大小:420.03KB
下载 相关 举报
基于MATLABGUI的简单计算器文档格式.docx_第1页
第1页 / 共29页
基于MATLABGUI的简单计算器文档格式.docx_第2页
第2页 / 共29页
基于MATLABGUI的简单计算器文档格式.docx_第3页
第3页 / 共29页
基于MATLABGUI的简单计算器文档格式.docx_第4页
第4页 / 共29页
基于MATLABGUI的简单计算器文档格式.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

基于MATLABGUI的简单计算器文档格式.docx

《基于MATLABGUI的简单计算器文档格式.docx》由会员分享,可在线阅读,更多相关《基于MATLABGUI的简单计算器文档格式.docx(29页珍藏版)》请在冰豆网上搜索。

基于MATLABGUI的简单计算器文档格式.docx

2功能实现

首先用MATLAB 

GUI功能,在绘制一个动态文本框和一个文本编辑框,以及25个命令按钮,调整好各控件大小、颜色,整体布局如图所示:

备注:

软件版本:

MATLABR2011b

2.1布局GUI

1、打开MATLAB,在Guide中新建FIG文件

2、然后双击“Blank 

GUI(Default)”或单击OK键出现GUI窗口

3、添加按钮和动态文本框

4、根据按钮的作用及视觉效果做一定的修改 

对按钮的字符串大小、颜色进行设置,对按钮的位置进行排布,尽量使按钮集中在动态文本框下面。

最终设置的动态文本框为灰色,其他按钮均为蓝色。

 

5、保存、添加功能函数 

将做好的按钮及动态文本框保存后自动弹出Editor的M文本,然后对相应的pushbutton添加功能函数。

以下是相应按钮的功能函数。

(1)数字按键编写。

在function 

pushbutton1_Callback(hObject, 

eventdata, 

handles)下输入:

globaljj

a=get(handles.edit1,'

String'

);

if(strcmp(a,'

0.'

)==1)&

&

(jj==0)

set(handles.edit1,'

'

else

a=strcat(a,'

0'

set(handles.edit1,'

a)

end

jj=0

这是使用句柄handles指向对象edit1,并以字符串形式来存储数据文本框edit1的内容,并存储数个“0”, 

然后由set(handles.edit1,'

a)在edit1中输出。

同理,分别在function 

pushbutton2~10_Callback(hObject, 

handles)下给1~9数字按键下编写此类程序。

(2)符号键:

pushbutton11_Callback(hObject, 

globalj

a=strcat(a,'

+'

if(jj==0)

jj=1;

j=0;

strcat的作用是将两个字符串连接起来,就是在已输入的存储数据a后添加“+”进行运算。

然后执行set(handles.edit1,'

a)。

符号键‘-’、‘*’、‘/’、‘.’与‘+’的运算函数类似, 

“平方运算”主要是由“^2”功能实现。

functionpushbutton12_Callback(hObject,eventdata,handles)

-'

functionpushbutton13_Callback(hObject,eventdata,handles)

*'

functionpushbutton14_Callback(hObject,eventdata,handles)

/'

functionpushbutton15_Callback(hObject,eventdata,handles)

.'

functionpushbutton16_Callback(hObject,eventdata,handles)

b=eval(a)

num2str(b^2))

(3)运算符“=”的编程:

string'

num2str(b))

“eval”的作用是将符号表达式转换成数值表达式再由set(handles.edit1,'

输出。

(4)按键“back”编程:

即显示一个空字符:

按键“back”编程:

(jj==0)

ss=char(a);

l=length(a);

a=ss(1:

l-1);

jj=0;

(5)按键“清零”:

把动态文本框的字符清空,返回一个空格。

(6)三角函数的编辑 

functionpushbutton17_Callback(hObject,eventdata,handles)

b=b*pi/180;

b=sin(b);

b)

b=b*pi/180是把角度转换为弧度,这样在编程环境中才能识别,sin才能起作用。

然后执行set函数,把结果输出来。

同理在cos,tan,cot的回调函数中也输入相应的函数,只需把b=sin(b);

中的sin改为cos,tan,cot即可 

(7)按键“()”:

在输入数据时添加括号,以便数据的优先计算。

('

s1=strcat(a,'

)'

s1)

2.2计算器的使用

加法运算(+):

按“=”后显示:

减法(-)、乘法(*)、除法(/)运算与加法(+)运算类似。

点号(.)、括号(()):

平方(X^2)运算:

按下(X^2)后

三角函数(sin、cos、tan、cot)运算:

按下(sin、cos、tan、cot)后

back、清零功能:

3程序总结

本程序实现简单的科学运算功能及便捷的图形化交互界面。

具有以下优点:

优点:

1、GUI内数据传递非常简便。

非常简便的实现了前台与后台、前台与前台、后台与后台之间的参数传递。

2、图形化用户交互界面简洁明了。

在制作计算器界面时操作简单,制作完成后程序的输入框直接弹出,可以直接写入,即可运行计算器。

简单的实现了设计与编程的数据传递。

4课程总结

1、通过MATLAB简单计算器的设计,初步了解了关于MATLAB图形用户界面的部分控件的使用方法。

2、MATLAB的GUI提供的很多实用的控件,方便用于设计属于自己的图形界面。

3、Matlab具有强大、丰富的内置函数和工具箱,界面设计时更加简洁、快捷与直观。

5参考文献

[1]《MATLAB语言及其在电子信息工程中的应用》王洪元主编清华大学出版社

[2]《MATLAB中GUI的应用》王洪元主编清华大学出版社

附录(主要程序)

functionvarargout=untitled66(varargin)

%UNTITLED66MATLABcodeforuntitled66.fig

%UNTITLED66,byitself,createsanewUNTITLED66orraisestheexisting

%singleton*.

%

%H=UNTITLED66returnsthehandletoanewUNTITLED66orthehandleto

%theexistingsingleton*.

%UNTITLED66('

CALLBACK'

hObject,eventData,handles,...)callsthelocal

%functionnamedCALLBACKinUNTITLED66.Mwiththegiveninputarguments.

Property'

Value'

...)createsanewUNTITLED66orraisesthe

%existingsingleton*.Startingfromtheleft,propertyvaluepairsare

%appliedtotheGUIbeforeuntitled66_OpeningFcngetscalled.An

%unrecognizedpropertynameorinvalidvaluemakespropertyapplication

%stop.Allinputsarepassedtountitled66_OpeningFcnviavarargin.

%*SeeGUIOptionsonGUIDE'

sToolsmenu.Choose"

GUIallowsonlyone

%instancetorun(singleton)"

.

%Seealso:

GUIDE,GUIDATA,GUIHANDLES

%

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 农学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1