资源描述:
《基于MATLAB GUI的简单计算器.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、姓名:曹慈航班级:12级电气自动化2班学号:1208441044基于MATLAB-GUI的简单计算器设计题目:计算器完成一个简单的计算器。要求(但不限于):GUI上具有数字键盘输入区域,能够进行加、减、乘、除、三角函数等基础运算。界面简洁、美观可能需要的控件:PushButtonEditTextPop-upMenu1功能介绍本程序是一个简单的计算器程序,使用MATLAB软件编写完成。主要具有加、减、乘、除、三角函数等基础运算,并通过GUI进行程序使用的交互。程序交互界面如下:图1程序的交互界面2
2、4/24姓名:曹慈航班级:12级电气自动化2班学号:12084410442功能实现首先用MATLAB GUI功能,在绘制一个动态文本框和一个文本编辑框,以及25个命令按钮,调整好各控件大小、颜色,整体布局如图所示:备注:软件版本:MATLABR2011b2.1布局GUI1、打开MATLAB,在Guide中新建FIG文件24/24姓名:曹慈航班级:12级电气自动化2班学号:12084410442、然后双击“Blank GUI(Default)”或单击OK键出现GUI窗口3、添加按钮和动态文本框24
3、/24姓名:曹慈航班级:12级电气自动化2班学号:12084410444、根据按钮的作用及视觉效果做一定的修改 对按钮的字符串大小、颜色进行设置,对按钮的位置进行排布,尽量使按钮集中在动态文本框下面。最终设置的动态文本框为灰色,其他按钮均为蓝色。 5、保存、添加功能函数 将做好的按钮及动态文本框保存后自动弹出Editor的M文本,然后对相应的pushbutton添加功能函数。以下是相应按钮的功能函数。 (1)数字按键编写。 在function pushbutton1_Callback(hO
4、bject, eventdata, handles)下输入:globaljja=get(handles.edit1,'String');if(strcmp(a,'0.')==1)&&(jj==0)set(handles.edit1,'String','0.')elsea=strcat(a,'0')set(handles.edit1,'String',a)endjj=0这是使用句柄handles指向对象edit1,并以字符串形式来存储数据文本框edit1的内容,并存储数个“0”, 然后由set(h
5、andles.edit1,'String',a)在edit1中输出。 同理,分别在function pushbutton2~10_Callback(hObject, eventdata, handles)下给1~9数字按键下编写此类程序。 (2)符号键: 在function pushbutton11_Callback(hObject, eventdata, handles)下输入: globaljjglobalja=get(handles.edit1,'String')a=strcat(a,'+
6、')if(jj==0)set(handles.edit1,'String',a)jj=1;endj=0; strcat的作用是将两个字符串连接起来,就是在已输入的存储数据a后添加“+”进行运算。 然后执行set(handles.edit1,'String',a)。符号键‘-’、‘*’、‘/’、‘.’与‘+’的运算函数类似, “平方运算”主要是由“^2”功能实现。 functionpushbutton12_Callback(hObject,eventdata,handles)globaljjglo
7、balja=get(handles.edit1,'String')a=strcat(a,'-')if(jj==0)set(handles.edit1,'String',a)jj=1;24/24姓名:曹慈航班级:12级电气自动化2班学号:1208441044endj=0;functionpushbutton13_Callback(hObject,eventdata,handles)globaljjglobalja=get(handles.edit1,'String')a=strcat(a,'*')
8、if(jj==0)set(handles.edit1,'String',a)jj=1;endj=0;functionpushbutton14_Callback(hObject,eventdata,handles)globaljjglobalja=get(handles.edit1,'String')a=strcat(a,'/')if(jj==0)set(handles.edit1,'String',a)jj=1;endj=0;functionpushbutton15_Callback(hObje