1.先打开matlab新建GUI文件
2.选择路径(左边是默认的不用改)
然后点击ok
3.此时界面会弹出一个小框
4.建立计算器界面(贴上我设计的界面,不许嘲笑我的设计)
5.细致讲解一下,这里的按键和显示框的是怎么实现的
A.显示框:选择edit text
在右边屏幕拉取即可
如图所示,新建两个即可,左边作为输入屏,右边作为输入结果的显示屏
双击该框,弹出一个窗口,窗口下拉,里面有该显示框的属性
string值为显示框显示的值
Tag为显示框的名字
(现在这个计算器需要显示框和输出框,如果没有新建其他的edit框,默认新建的第一个edit框的名字为edit1,第二个为edit2)
B.数字按钮和字符按钮
点击push button 新建按钮,需要几个建几个
双击之后在string那一栏改成你所需要的按钮
回车之后,如图所示
6.把界面雏形做出之后,我们需要去实现计算器的操作
A.首先改0~9的数字键(需要点击后在edit1上显示该数字)
右键点击你需要改的button之后会出现一个窗口选择view callbacks->callback,然后会打开一个函数,蓝色字体所在的位置是该button所在的位置的代码
按照这个方式将自己的代码改成自己所需要的数字
handles.后面加的是自己所需要将显示的文本框的名字
textString = get(handles.edit1,'String');
textString = strcat(textString,'6');
set(handles.edit1,'String',textString);
guidata(hObject, handles);
B.对于计算符号
textString = get(handles.edit1,'String');
textString = strcat(textString,'+');
set(handles.edit1,'String',textString);
guidata(hObject, handles);
加减乘除只需用换一下就好
C.对于AE操作
textString = get(handles.edit1,'String');
textString = get(handles.edit2,'String');
set(handles.edit1,'String','');
set(handles.edit2,'String','');
guidata(hObject, handles);
D.对于back操作
textString=get(handles.edit1,'String');
as=char(textString);
n=length(textString);
textString=as(1:n-1);
set(handles.edit1,'String',textString)
guidata(hObject, handles);
E.退出操作
close(gcf);
7.初始化操作
A.需要对edit1和edit2进行初始化,使代码运行时,文本框里为空白(需要在opening里改函数)
set(handles.edit1,'string','');
set(handles.edit2,'string','');
B.需要将edit1的结果在edit2中显示出来(需要改计算那个button的函数值)
textString = get(handles.edit1,'String');
aa = eval(textString);
set(handles.edit2,'String',aa);
guidata(hObject, handles);
使其显示在edit2上
点击运行即可实现计算器。