MATLAB的uicontrol包括按钮、滑标、文本框及弹出式菜单。
语法格式:hc_1=uicontrol(Hf_fig,'PropertyName',PropertyValue,...)
共有8种不同类型或形式的控制框,属性'Style'决定了所建控制框的类型,'CallBack'属性值是当控制框激活时,传给eval在命令窗口空间执行的字符串。
下面就分别介绍 这8种不同类型的控制框,主要是它们的创建语句格式。
1)按钮
hc_close=uicontrol(gcf,'Style','push','Position',[10,10,100,25],...
'String','Close','CallBack','close');
Position属性定义按钮键大小和位置,String定义了按钮标志(名称),按钮的Style属性是pushbutton。
)无线按钮(选择/切换按钮)
由一个标志和标志文本的左端一个小圆圈或小菱形所形成。当选中时,圆圈被填充,且'Value'属性值设为1;没被选中为0。无线按钮具有互斥性,当一组选项value为1,其他就为0。
应用代码如下:
hc_boxon=uicontrol(gcf,'Style','radio','Position',[5,26,100,15],...
'String','Set Box on','Value',0,'CallBack',[...
'set(hc_boxon,''Value'',1),',...
'set(hc_boxoff,''Value'',0),',...
'set(gca,''Box'',''on''),']);
hc_boxoff=uicontrol(gcf,'Style','radio','Position',[5,5,100,15],...
'String','Set Box off','Value',1,'CallBack',[...
'set(hc_boxon,''Value'',0),',...
'set(hc_boxoff,''Value'',1),',...
'set(gca,''Box'',''off''),']);
3)复选框
激活时,uicontrol在检查和清楚状态之间切换。Value属性值同上。
hc_box=uicontrol(gcf,'Style','check','Position',[5,26,100,15],...
'String','Axis Box','CallBack',[...
'if get(hc_box,''Value'')==1,',...
'set(gca,''Box'',''on''),',...
'else,',...
'set(gca,''Box'',''off''),'...
'end']);
4)静态文本框
用户不能动态地修改所显示的文本,文本只能通过改变'String'属性来更改。
hc_text=uicontrol(gcf,'Style','text','Position',[200,200,75,15],...
'String',['Hello World']);
5)可编辑文本框
hc_multi=uicontrol(gcf,'Style','edit','Position',[200,150,55,100],...
'String','Line1|Line2|Line3',...
'Max',2);
通过把'Max'属性及'Min'属性设置成数值,可建立多行可编辑文本框。
6)滚动条
三种方式设定:
法1:使鼠标指针指向指示器,移动指示器,拖动鼠标时,要按住鼠标按键,当指示器位于期望位置后松开鼠标。
法2:当指针处于槽中但在指示器一侧时,单击鼠标按键,指示器按该侧方向移动距离约等于整个值域范围的10%。
法3:在滚动条不论哪端单击鼠标指针,指示器沿着箭头方向移动大约滑标范围的1%。
例:设置视点方位角
clc
vw=get(gca,'View'); %获得当前axis的三维视角(方位角和仰视角)
hc_az=uicontrol(gcf,'Style','slider','Position',[2,2,140,20],...
'Min',-90,'Max',90,'Value',vw(1),...
'CallBack',[...
'set(hc_cur,''String'',num2str(get(hc_az,''Value''))),'...
'set(gca,''View'',[get(hc_az,''Value''),vw(2)])']);%仰角不变,方位角为滚动条所在的值
%创建三个静态文本框,分别显示最大最小及当前值
hc_min=uicontrol(gcf,'Style','text',...
'Position',[2 25 20 15],...
'String',num2str(get(hc_az,'Min')));
hc_max=uicontrol(gcf,'Style','text',...
'Position',[128 25 20 15],...
'String',num2str(get(hc_az,'Max')));
hc_cur=uicontrol(gcf,'Style','text',...
'Position',[65 25 20 10],...
'String',num2str(get(hc_az,'Value')));
滑标方向取决于宽与高之比。如果width大于height,就画水平方向的滑标,否则就画垂直方向的滑标。在X Window系统平台中,如果滑标一个方向大小比另一个方向小于4倍,就不显示,其他操作平台上滑标均有箭头。
7)弹出式菜单
当选择一个弹出项时,'Value'属性值会设置成选择向量所选元素的下标。选项的标志指定为一个字符串,用"|"分隔。
hc_az=uicontrol(gcf,'Style','popupmenu','Position',[200,200,80,20],...
'String','Black|Red|Yellow',...
'Value',1,...
'UserData',[[0 0 0];...
[1 0 0];...
[1 1 0]],...
'CallBack',[...
'UD=get(hc_fcolor,''UserData'');',...
'set(gcf,''Color'',UD(get(hc_fcolor,''Value''))']);
8)框架
仅是带色彩的矩形区域,提供了视觉的分隔性。要事先定义!否则可能覆盖其他控制框。
clc
hc_frame=uicontrol(gcf,'Style','frame','Position',[250 200 95 90]);
hc_pb1=uicontrol(gcf,'Style','push','Position',[255 205 40 40],'String','Ok');
hc_pb2=uicontrol(gcf,'Style','push','Position',[300 205 40 40],'String','NOT');
hc_text=uicontrol(gcf,'Style','text','Position',[255 256 85 20],'String','Push Me');
相关推荐
第4部分“GUI界面编程”,包括第27~第29章,从程序设计、图形用户界面设计入手讲解了软件编程方面的问题,最后给出了图像处理软件及界面编程的实际例子。 本书写作结构明晰,图文并茂,案例丰富,具有很强的可操作...
第4部分“GUI界面编程”,包括第27~第29章,从程序设计、图形用户界面设计入手讲解了软件编程方面的问题,最后给出了图像处理软件及界面编程的实际例子。 本书写作结构明晰,图文并茂,案例丰富,具有很强的可操作...
MATLAB图像用户界面设计很适应初学者
第4部分“GUI界面编程”,包括第27~第29章,从程序设计、图形用户界面设计入手讲解了软件编程方面的问题,最后给出了图像处理软件及界面编程的实际例子。 本书写作结构明晰,图文并茂,案例丰富,具有很强的可操作...
第4部分“GUI界面编程”,包括第27~第29章,从程序设计、图形用户界面设计入手讲解了软件编程方面的问题,最后给出了图像处理软件及界面编程的实际例子。 本书写作结构明晰,图文并茂,案例丰富,具有很强的可操作...
基于matlab的图像处理技术及用户界面设计.pdf基于matlab的图像处理技术及用户界面设计.pdf基于matlab的图像处理技术及用户界面设计.pdf基于matlab的图像处理技术及用户界面设计.pdf基于matlab的图像处理技术及用户...
该项目基于matlab语言实现,带UI界面和测试数据图片及代码,在matlab2014a上亲测可以直接运行。主要运用数字图像处理的相关知识,滤波、去噪、分割等技术。适用于数字图像处理学习者、matlab研究者、计算机视觉入门...
基于MATLAB的图像处理的课程设计 一、课程设计的目的: 综合运用MATLAB工具箱实现图像处理的GUI...要求利用MATLAB GUI设计实现图像处理的图形用户界面,利用MATLAB图像处理工具箱实现以下的图像处理功能:
matlab图形用户界面(GUI)制作.DOC
基于MATLAB GUI的图像边缘检测界面
matlab具有完备的图形处理功能、友好的用户界面以及功能强大的图形处理工具箱,能够实现对数字图像的编辑和处理工作,实现功能包括数字图像的读取、存储、显示、去色、图像翻转、局部放大、透明度调整、去噪、平滑、...
通过GUI用户界面实现了数字图像的读取、存储、剪切、反色、加噪、滤波去噪、边沿检测、旋转、撤销和还原等功能。完成了一个功能齐全,运行稳定的数字图像处理系统的设计。(包含可执行代码及编译文件)
(2)绘出基本的用户界面草图,并对其进行修改,最终确定一个方案。 (3)根据最终确定的方案,利用 MATLAB GUI 制作用户操作界面以及其 他菜单项目。 (4)编写界面及其菜单里的每个功能的回调程序, 并且逐项进行...
利用MATLAB的图像用户界面GUI设计一个简单的菜单式图像处理系统.zip
2)设计图形用户界面,让用户能够对图像进行任意的亮度和对比度变化调整,显示和对比变换前后的图像。 3)设计图形用户界面,让用户能够用鼠标选取图像感兴趣区域,显示和保存该选择区域。 4)编写程序通过最近邻...
学习MATLAB GUI程序设计,利用MATLAB图像处理工具箱,设计和实现自己的Photoshop 。要求:按照软件工程方法,根据需求进行程序的功能分析和界面设计,给出设计详细说明。然后按照自己拟定的功能要求进行程序设计和...
matlab 图像处理 函数列表 高级图像处理 用户图形界面
matlab基本教程,里面包括回调函数及步骤分析,通过一步一步的讲解教会你如何入门gui界面