Matlab学习笔记(3)—GUI程序设计与图像处理基本操作
一.GUI程序设计
如果想要开始使用Matlab进行GUI编程,首先需要进入Matlab的GUI界面对GUI有一个基本的认识。
1.guide:创建或编辑UI文件
guide;% 会打开 GUIDE,这是一个 UI 设计环境。从“Quick Start”对话框中,您可以选
择打开以前创建的 UI 或使用其中一个模板创建新 UI
guide(filename);%在GUIDE中打开指定的 MATLAB® 图窗文件进行编辑。如果图窗文件不
在 MATLAB 路径上,请指定完整路径。一次只能打开一个 filename
guide(figs);%在 GUIDE 设计环境中使用单独的副本分别打开 figs 中的每个 Figure 对
象。如果要编辑 GUIDE 中已保存到变量的一个或多个预先存在的图窗,请使用此语法。
如上图所示,使用guide命令后,会出现GUI图形构件框和创建GUI程序
在出现的GUI图形界面里是Matlab公司为我们提供的相关构件,大家可以自己探索。设置好自己需要的图形构件后可以点击RUN则可以生成用户所要求的GUI界面。
可以使用对其设置使得所创建的图形构件进行对齐操作
2.关于GUI图形界面与GUI函数的练习
我们还可以改变图形构件的外观参数,注意Tag选项存放是该构件的标识符,用于程序可以识别出它所控制的是哪个按钮。
当按下UI界面的某一按钮构件后,会执行GUI程序下的callback函数
注意:用户插入callback函数的位置也有指定要求
练习一——构件如下GUI程序
滑动A和B滑块并显示计算出其加和
参考实现:
首先绘制出如下UI界面
注意将SLIDE构件中的MAX和MIN分别改为100和0
然后在就是在GUI程序中对应构件的callback处插入程序语句了
% --- Executes on slider movement.
function slider1_Callback(hObject, eventdata, handles)
% hObject handle to slider1 (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,'Value') returns position of slider
% get(hObject,'Min') and get(hObject,'Max') to determine range of slider
%插入内容
a=get(handles.slider1,'value');%获取slide1当前的值
handles.myData1=a;%将a存入一个数据库中存储起来
guidata(hObject,handles);%将该数据存储好
b=get(handles.slider2,'value');%获取slider2当前的值value并赋予b
handles.myData2=b;
guidata(hObject,handles);
f=handles.myData2;%将myData2中的值赋于f
%b=get(handles.slider2,'value');
c=int16(a+f);%a+f后使用int16()函数变为整型变量
txt1=['A+B=',num2str(c)];%使用num2str()将数值抓换为字符串格式
set(handles.text8,'String',txt1);%使用set函数设置handles.text7中的String属性
%插入内容
% --- Executes during object creation, after setting all properties.
function slider1_CreateFcn(hObject, eventdata, handles)
% hObject handle to slider1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: slider controls usually have a light gray background.
if isequal(get(hObject,'BackgroundColor'),