当前位置:文档之家› 数字图像处理及应用(MATLAB)第7章

数字图像处理及应用(MATLAB)第7章


“guide”命令打开GUIDELeabharlann GUI Quick Start”对话框
可以看到,MATLAB给提供了4种新建界面类型: (1)空白模版(Blank GUI) (2)带有控件对象的GUI模版 ( GUI with Uicontrols) (3)带坐标轴和菜单的模版 (GUI with Axes and Menu) (4)带模式问题对话框的模版 ( Modal Question Dialog) 我们可以根据自己需求的不同来选择使用不同的模版,这里, 我们单击选择使用默认的空白模版“Blank GUI (Default)”,然后 点击OK,就会出来我们要进行操作和设计的GUIDE界面。
7.2 菜单及快捷键的设计
利用菜单编辑器,可以创建、设置、修改下拉式菜单和现场菜 单(Context Menu),通过这些菜单的使用,可以方便的执行某 些操作,给用户带来很大的方便。
7.2.1 菜单的设计 图中,各个控件已添加完毕,属性也设置完成,接下来是添加 菜单栏和工具栏。点击工具栏上的菜单编辑器按钮 (Menu Editor)或者由GUIDE菜单选取【Tool】下面的【Menu Editor】, 可以打开菜单编辑器,如图所示。
在了解了上述控件属性后,分别对图7.1.9各个控件进行属性设 置,其中最重要的为Tag和String属性。两个坐标轴Tag属性分别 设置为axes_1和axse_2;静态文本框Tag属性设置为text4,为了 美观,将其String属性设置为空;文本框Tag属性为text_edit,同 理,String属性为空;按钮Tag属性为默认,String属性为“清 空”,字体为默认属性,大小由属性FontSize设置为12。如图所 示。
GUI空白设计模版界面
控件是事件响应的图形界面对象。MATLAB中的控件大致可 分为两种,当鼠标点击该控件时会产生相应的响应, 称为动作控件, 如按钮、滑动条等。另一种为静态控件,是一种不产生响应的控件, 如文本框、文本标签等。就上述主要控件,简单的介绍一下主要控 件的功能和应用场合: (1)按钮(Push Button)主要是响应鼠标的单击事件,执行预 定的功能。 (2)滑动条(Slider) 主要是通过滑动条上的方块位置来改变向 程序提供的数值的大小。 (3)单选按钮(Radio Button) 用于实现同一属性项在多项取 值之间的切换,经常是多个一组联合使用。 (4)复选框(Check Box) 复选框和单选按钮类似,单个的复 选框用来在两种状态间切换,多个复选框组成一个复选框组时,用 户可以在一组状态中作组合式选择。 (5)文本框(Edit Text) 文本框用于为程序运行提供输入参数, 支持用户通过键盘输入字符串。
下面简单介绍一下各种控件主要的属性含义: BackgroundColor:3元素的RGB向量,默认背景色为浅灰色,点 开左边“+”,可根据需求更改颜色,也可以点击该栏后半部空白处 进行设置背景颜色。 Callback:MATLAB回调函数,初始值为空,有效值为字符串;该 属性定义当鼠标单击该对象时所要执行的操作,当用户激活某个控 件对象时,应用程序就运行该属性定义的子程序。 CreateFcn:有效值为字符串。用于定义当MATLAB建立一个菜单 对象时所必须要执行的操作。 DeleteFcn:有效值为字符串。用于定义当用户删除一个对象时, MATLAB在该界面前更动前必须执行该操作。 Enable:使能设置,有效值为on或off,默认为on。决定了该功能 是否激活。 FontSize:设置字体大小。 FontUnits:位置属性值得单位。通过右方 可选择:inches(英 寸)、centimeters(厘米)、normalized(归一化坐标值)、 points(打印设置点)、pixel(屏幕的像素)。
在该菜单编辑器左下角,显示有两种菜单类型:Menu Bar和 Context Menus,其中前者主要用于建立一般的菜单,后者主要用 于来建立界面中执行单击鼠标右键所显现的菜单。根据需求,这里 选择默认的Menu Bar。
图7.2.1 菜单编辑器
单击按钮 (New Menu)可以新建菜单项。如图,其中图的 右方为菜单编辑器内设的菜单属性设置区域。
初始运行界面效果
对齐方式窗口
绘制控件
7.1.2控件对象的属性 每种控件都有一些可以设置 的参数,用于表现控件的外形、 功能及效果,即属性。属性由两 部分组成:属性名和属性值,它 们必须是成对出现的。双击该控 件或者是借助右击鼠标调出 “Property Inspector”属性设置 窗口,那么为了能充分发挥出这 些控件的功能,需要对不同控件 的属性值进行设置,达到自己要 求的效果。不同控件属性稍有不 同,以坐标轴控件为例打开其属 性窗口,如图所示。
FontWeight:修改字体,点击右方 进行选择。 ForegroundColor:MATLAB的一个预先定义的前景颜色设置, 默认为黑色。 Max:属性Value的最大许可值,默认值为1。 Min:属性Value的最小许可值,默认为0。 Position:位置向量[x y width height],用以调整控件的位置和尺 寸。 String:取值为字符串,定义控件标题或选项内容。 Tag:有效值为字符串;当MATLAB搜索符合的对象时,该对象就 是利用Tag属性来描述的,是一个控件的身份标识。 Value:当单选按钮和复选框在“on”状态时,Value为Max,否则 为Min。文本对象和按钮不设置该项。 Visible:有效值为on或off。设定对象的可见性。在控件里默认为 on。
最终界面效果
同理,在界面空白处,右 击鼠标,选择“Property Inspector”,或者双击鼠标, 可以打开属性窗口,部分属性 与控件属性相同。在此对窗口 的属性进行操作,如图,修改 当前figure窗口的Name属性 为:图像处理界面;Tag属性 为:figure_by_me。
GUI属性设置
第七章 数字图像处理软件设计
7.1 图形用户界面设计
7.2 菜单及快捷键的设计
7.3 软件设计技术分析
7.1 图形用户界面设计
用户界面是指人与程序或者是机器之间交互作用的工具,那么 图形用户界面(GUI)也是这个意思,把窗口、菜单、按键、文字 说明等对象结合在一起,就构成一个用户界面。用户只需通过鼠标 或者是键盘与计算机前台这些控件发生交互,而所有运算、画图等 操作都封装在了内部,用户无需了解这些复杂的代码执行过程。图 像用户界面大大提高了用户使用程序的简单和方便性。 不同的用户针对不同的需求,设计出的界面是千差万别的。设 计一个界面时一般考虑以下四个原则。 (1)简单性 简洁而又清新的体现界面功能和特征,避免杂乱无 章。 (2)一致性 界面要求和已经存在的界面风格保持一致。 (3)习常性 设计时,尽量使用大家熟悉的标志。 (4)其他因素 主要是指界面的动态性能,包括界面的响应速度, 运算过程中是否允许中断等等。
(6)文本标签(Static Text)文本标签是显示固定字符串的标签 区域,用于为其它组件提供解释和说明。 (7)下拉菜单(Pop-UpMenu)下拉菜单的使用可以选择其中 的一个项目来设置程序运行时需要的某个输入参数的取值。 (8)下拉列表框(List Box) 用户可以选择其中的多个项目来 设置程序运行时需要的输入参数。 (9)双位按钮(Toggle Button)主要用于相应鼠标单击事件, 一般用于后台程序运行、终止等。 (10)坐标轴(Axes) 是图形化显示后台程序运行输出结果的 区域,用于显示图像和图像。 (11)ActiveX控件(ActiveX Control) 主要用于MATLAB和其 他应用程序的交互。 为了更好地了解界面的操作,至此,我们先执行一下工具栏保 存方式,将上述.fig文件保存为by_me.figure。点击GUI运行按 钮 ,运行结果如图
其中,控件面板的外观可以通过设置GUIDE的属性进行简要的 修改,选择GUIDE中File菜单下的Reference命令,在弹出的对话 框中选择“Show names in Component Palette”复选框,如图操 作所示。
GUIDE属性对话框
单击OK,控件面板中在不同的控件旁边会显示相应控件的名 称。如图所示左侧控件显示方式已发生变化,更加清晰直观。
7.1.1控件对象的创建及其类型
首先确定使用较新的MATLAB版本,较低版本没有工具编辑器, 本文使用的版本是MATLAB R2010b。1.4节中,我们已经介绍了 MATLAB各个窗口还有工具栏,菜单栏,下面开始制作界面。首先 运行MATLAB软件,如图7.1.1在(Command Window)命令窗 口输入guide命令,或者在工具栏点击 ,会弹出GUIDE设计界 面,用户可以选择创建一个新的GUI程序或者打开已有的GUI程序。 如图所示。
可以看到,这是一个名字为“untitled”的空白界面,如果想让 这个界面丰富起来,执行更多操作的话,就需要添加上述控件。控 件的添加可直接由鼠标选取该控件并拖拽至指定的GUIDE工作区内 即可,大小可通过鼠标拖拽对象四周的黑点来调节。同理,整个 GUI窗口的大小也可以通过鼠标拖拽窗口右下角的黑点加以控制。 添加了两个坐标轴,一个文本框和静态文本框标签 ,还有一个鼠 标响应按钮。通过使用工具栏 按钮可对鼠标选中的控件进行各 种对齐操作。
GUI空白设计模版界面
图所示设计工作界面包括4个功能区:其中菜单条与编辑工具 条位于界面顶部;控件模版区位于界面左侧;中心为GUI设计工作 区。 菜单栏提供了许多在此界面下操作的菜单项,包括File、Edit 等操作。 工具栏中的按钮从左到右依次为:新建、打开、保存、剪切、 复制、粘贴、撤销、返回撤销、对象分布和对齐、菜单编辑器、M 文件编辑器、对象属性设置窗口、对象浏览器和GUI运行按钮。 左侧控件模版主要包括:按钮(Push Button)、滑动条 (Slider)、单选按钮(Radio Button)、复选框(Check Box)、 文本框(Edit Text)、文本标签(Static Text)、下拉菜单 (Pop-UpMenu)、下拉列表框(List Box)、双位按钮(Toggle Button)和坐标轴(Axes)、ActiveX控件(ActiveX Control) 等。
相关主题