本实验取材于《科学计算与MATLAB语言》主要讲述如何操控matlab图形窗口。
- 图形用户界面的组成
- 控件对象及其操作
- 菜单对象及其操作
图像用户界面的组成
它是用户与计算机进行信息交流的窗口。
设计图形用户界面的方法:
- 调用建立用户界面控件的函数。
- 使用MATLAB提供的GUIDE工具进行可视化设计。
控件对象及其操作
常用控件
- 输入和输出类控件:编辑框、静态文本、列表框、滑动条等。
- 实施确认、选择操作类控件:按钮、双位按钮、单选按钮、复选框等。
建立控件对象
uicontrol函数用于建立控件对象,其调用格式为:
句柄变量=uicontrol(图形窗口句柄,属性1,属性值1,属性2,属性值2,...)
其中,属性及其取值决定了控件的特征。若省略图形窗口句柄,默认在当前图形窗口建立控件对象。
控件对象的基本控制属性
- Style属性:定义控件对象的类型,例如’pushbutton’表示按钮对象,'edit’表示编辑框,等等.
- String属性:定义控件对象的说明文字。
- Tag属性:标识控件对象.
- Enable属性:控制控件对象是否可用。
- Position属性:定义控件对象的位置和大小,其取值形式为[x,y,w,h].
- Callback属性:属性值是描述命令的字符串或函数句柄。当选中控件时,系统将自动执行字符串描述的命令或调用句柄所代表的函数,实施相关操作。
菜单对象
建立菜单对象
uimenu函数用于创建、设置、修改菜单,其调用格式为:
一级菜单项句柄=uimenu(图形窗口句柄,属性1,属性值,属性2,属性值2,...)
子菜单项句柄=uimenu(上级菜单项句柄,属性1,属性值,属性2,属性值2,....)
菜单属性
- Label属性:用于定义菜单项的名字.
- Accelerator属性:用于定义菜单项的快捷键.
- Checked属性:指示菜单项是否已选中.
- Enable属性:控制菜单项的可选择性.
- Separator属性:用于在菜单中添加分割线.
例子–窗口画正弦
先在plot_sin.m里写下绘制正弦函数
function plot_sin(source, callbackdata)
t=-pi:pi/20:pi;
plot(t,sin(t));
end
然后开始创建菜单:
ha= axes('Units','pixels','Position',[40,40,360,360]);
ptgrid=uicontrol('Style','pushbutton',...
'String','网格', 'Position', [450,120,48,20],...
'Callback','grid' );
btncla = uicontrol('Style', 'pushbutton', ...
'String', '清除','Position', [450,80,48,20],...
'Callback','cla' );
btnplot = uicontrol('Style', 'pushbutton', ...
'String','绘图','Position', [450,160,48,20],...
'Callback','plot_sin');