《用matlab做的 一个计算器》由会员分享,可在线阅读,更多相关《用matlab做的 一个计算器(8页珍藏版)》请在金锄头文库上搜索。
1、一、布局 GUI。1.打开 Matlab,输入 Guide 回车或者在工具栏上点击图标 出现 Guide 窗口:2.然后双击“Blank GUI(Default)”出现 GUI窗口3.添加按钮4.根据按钮的作用及视觉效果做一定的修改把按钮的字符串大小、颜色进行设置,对按钮的位置进行排布,尽量使按钮集中在静态文本框下面。最终设置的静态文本框为白色,其他按钮均为分红色。5.保存、添加功能函数把做好的按钮及静态文本框保存后自动弹出 Editor 的 M 文本,对然后对相应的 pushbutton添加功能函数。以下是相应按钮的功能函数。(1)数字按键编写。在 function pushbutton1_
2、Callback(hObject, eventdata, handles)下输入:textString = get(handles.text1,String);textString =strcat(textString,0);set(handles.text1,String,textString)这是使用句柄 handles指向对象 text1,并以字符串形式来存储数据文本框text1的内容,并存储数个“0”,然后由 set(handles.text1,String,textString在 text1中输出。同理,分别在 function pushbutton210_Callback(hObj
3、ect, eventdata, handles)下给 19数字按键下编写此类程序。(2).符号键:function pushbutton12_Callback(hObject, eventdata, handles)textString = get(handles.text1,String);textString =strcat(textString,+);set(handles.text1,String,textString)strcat的作用是将两个字符串连接起来,就是在已输入的存储数据 textString后添加“+”进行运算。然后执行 set(handles.text1,String,
4、textString)。符号键-、*、/与+的运算函数类似。“平方运算”,主要是由“2”功能实现。(3)运算符“=”的编程:textString = get(handles.text1,String);ans =eval(textString);“eval”的作用是将符号表达式转换成数值表达式。再由 set(handles.text1,String,ans)输出。(4)按键“back”编程:即显示一个空字符:set(handles.text1,String,) ;按键“back”编程:textString = get(handles.text1,String);set(handles.text
5、1,String,) ;ss=char(textString);n=length(textString);textString=ss(1:w-1);%将 w个字符串转成 w-1个,即删除了末位字符set(handles.text1,String,textString)(5)按键“清空”:把静态文本框的字符清空,返回一个空格set(handles.text1,String,)(6)按键“退出”:关闭计算器close(gcf);二、计算器的使用加法运算(+):按“=”后显示平方运算:按“=”后显示附各按键的程序源代码:function pushbutton1_Callback(hObject, e
6、ventdata, handles)textString=get(handles.text1,String)textString=strcat(textString,0)set(handles.text1,String,textString)function pushbutton2_Callback(hObject, eventdata, handles)textString=get(handles.text1,String)textString=strcat(textString,1)set(handles.text1,String,textString)function pushbutto
7、n3_Callback(hObject, eventdata, handles)textString=get(handles.text1,String)textString=strcat(textString,2)set(handles.text1,String,textString)function pushbutton4_Callback(hObject, eventdata, handles)textString=get(handles.text1,String)textString=strcat(textString,3)set(handles.text1,String,textStr
8、ing)function pushbutton5_Callback(hObject, eventdata, handles)textString=get(handles.text1,String)textString=strcat(textString,4)set(handles.text1,String,textString)function pushbutton6_Callback(hObject, eventdata, handles)textString=get(handles.text1,String)textString=strcat(textString,5)set(handle
9、s.text1,String,textString)function pushbutton7_Callback(hObject, eventdata, handles)textString=get(handles.text1,String)textString=strcat(textString,6)set(handles.text1,String,textString)function pushbutton8_Callback(hObject, eventdata, handles)textString=get(handles.text1,String)textString=strcat(t
10、extString,7)set(handles.text1,String,textString)function pushbutton9_Callback(hObject, eventdata, handles)textString=get(handles.text1,String)textString=strcat(textString,8)set(handles.text1,String,textString)function pushbutton10_Callback(hObject, eventdata, handles)textString=get(handles.text1,Str
11、ing)textString=strcat(textString,9)set(handles.text1,String,textString)function pushbutton11_Callback(hObject, eventdata, handles)textString=get(handles.text1,String)textString=strcat(textString,+)set(handles.text1,String,textString)function pushbutton12_Callback(hObject, eventdata, handles)textStri
12、ng=get(handles.text1,String)textString=strcat(textString,-)set(handles.text1,String,textString)function pushbutton13_Callback(hObject, eventdata, handles)textString=get(handles.text1,String)textString=strcat(textString,*)set(handles.text1,String,textString)function pushbutton14_Callback(hObject, eve
13、ntdata, handles)textString=get(handles.text1,String)textString=strcat(textString,/)set(handles.text1,String,textString)function pushbutton15_Callback(hObject, eventdata, handles)textString=get(handles.text1,String)textString=strcat(textString,.)set(handles.text1,String,textString)function pushbutton
14、16_Callback(hObject, eventdata, handles)textString=get(handles.text1,String)s=eval(textString)set(handles.text1,String,s)function pushbutton17_Callback(hObject, eventdata, handles)textString=get(handles.text1,String)textString=strcat(textString,2)set(handles.text1,String,textString)function pushbutt
15、on18_Callback(hObject, eventdata, handles)% hObject handle to pushbutton18 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)textString=get(handles.text1,String)w=length(textString)t=char(textString)textString=t(1:w-1)set(handles.text1,String,textString)function pushbutton19_Callback(hObject, eventdata, handles)set(handles.text1,String,)function pushbutton20_Callback(hObject, eventdata, handles)% hObject handle to pushbutton20 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% h