- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
matlab-gui初学者教程
Matlab GUI编程教程(适用于初学者)
1.首先我们新建一个GUI文件:File/New/GUI 如下图所示;
选择Blank GUI(Default),可以更改存储地址
2.进入GUI开发环境以后添加两个编辑文本框(两个白色框)。6个静态文本框。和一个按钮(计算)。布置如下图所示;
布置好各控件以后。我们就可以来为这些控件编写程序来实现两数相加的功能了。
3.我们先为数据1文本框添加代码;
点击上图所示红色方框。选择edit1_Callback(注意!)。光标便立刻移到下面这段代码的位置。
function edit1_Callback(hObject, eventdata, handles)
% hObject handle to edit1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,String) returns contents of edit1 as text
% str2double(get(hObject,String)) returns contents of edit1 as a double
然后在上面这段代码的下面插入如下代码:
%以字符串的形式来存储数据文本框1的内容. 如果字符串不是数字。
则现实空白内容
input = str2num(get(hObject,String));
%检查输入是否为空. 如果为空,则默认显示为0
if (isempty(input))
set(hObject,String,0)
end
guidata(hObject, handles);
这段代码使得输入被严格限制。我们不能试图输入一个非数字。
4.为edit2_Callback添加同样一段代码,这里要注意和你自己的控件名称(edit2)是否一样!
5 现在我们为计算按钮添加代码来实现把数据1和数据2相加的目的。
用3中同样的方法在m文件中找到pushbutton1_Callback代码段 如下;
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
在上面这段代码后添加以下代码;
a = get(handles.edit1,String);
b = get(handles.edit2,String);
% a and b are variables of Strings type, and need to be
% converted to variables of Number type before they can
% be added together%
total = str2num(a) + str2num(b);
c = num2str(total);
% need to convert the answer back into String type to
% display it
set(handles.text1,String,c);
guidata(hObject, handles);
下面我们来对上面这段程序分析一下;
a = get(handles.edit1,String);
b = get(handles.edit2,String);
上面这行代码把用户输入的数据存入到变量a,变量b中;
% a,b是字符型变量。在计算两者相加之前需把他们转换为数字型
total = str2num(a) + str2num(b);
这段代码实现两数相加
c = num2str(total);
set(handles.text3,String,c);
guidata(hObject, handles);
以上两行代码分别用来更新计算结果文本框和图形对象句柄。一般Callback回调函数都以guidata(hObject, handles);j结束以更新数据
程序运行如下:
温馨提示,复制过去的时候注意多余的空格可能出错!
文档评论(0)