matlab图形用户界面(GUI).ppt

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第17章 图形用户界面(GUI) 用户界面即是用户与硬件、软件交互、通信的中介,通过用户界面,用户向软件发出执行某项功能的指令,该软件利用硬件、其他软件执行该指令,并以图形或文字的形式将执行结果返回给用户。早期的用户界面大多是基于文字的形式,最典型的莫过于DOS系统。用户输入某一指令,系统通过调用软件、硬件资源执行该指令,并以文字的形式返回执行结果。现今,对大多数用户来说,DOS(及类似的用户界面系统)似乎是一个讳深莫测的世界,不仅单调乏味,而且工作效率也很低;人们更青睐于一种所见即所得的用户界面系统,即图形用户界面(Graphical User Interface,简称GUI)。图形用户界面是由窗口、光标、按键、菜单、文字等元素构成的用户视窗,用户通过对这些元素的点击、选中等就能很轻松地完成某项功能,这种所见即所得的特性尤其在图形绘制等方面具有很好的应用。 17.1 两种GUI设计方式 图形用户界面程序可以分为两个相对较独立的子模块,即界面模块和工作模块,界面模块接受用户的输入,并将输入数据和操作请求提交给工作模块;而工作模块通常在后台完成数据处理任务,并将结果提交到界面。相应地,GUI程序设计可以分为界面设计和程序设计两部分。 本节首先介绍GUI的界面元素及界面对象层次结构,这是GUI界面设计的基础;第17.1.2节讨论回调函数,这是GUI程序设计的主要部分。依据GUI界面设计方式的不同,本节将分别讨论手工代码式和GUIDE式两种GUI程序设计方式。鉴于GUIDE式简便、快捷、良好的所见即所得特性,本章后文中以GUIDE式为主讨论GUIDE程序设计。 17.1.1 GUI对象及层次结构 图形用户界面程序的界面部分由各种类型的图形对象组成,如窗口、菜单、按钮等,图是一个MATLAB GUI程序的简单例子。 MATLAB的图形对象是MATLAB用于显示数据的基本元素,每个图形对象都有一个唯一惟一的ID,称之为句柄(handle),因此MATLAB图形对象也称为句柄图形对象。用户可以通过图形句柄查询或设置对象的属性,也可以经由图形句柄改变图形对象的外观。关于句柄图像对象相关知识在第14章已有所介绍,这里不再赘述。 17.1.2 回调函数 GUI程序完成初始化之后,其工作流程大致如下:用户通过操作某个界面对象(如单击图17.1中的Resample按钮)向GUI程序发出任务请求;MATLAB自动调用该界面对象的回调函数,响应用户请求并以某种形式返回执行结果。 这里有必要澄清一个问题,即回调函数是用户操作触发,但由MATLAB系统调用;用户不需要也不应当直接调用回调函数,用户只需关注回调函数本身。用户也许会对MATLAB系统如何启动回调函数心存疑问,实际上回调函数是界面对象的一个属性,MATLAB系统通过界面对象的句柄查询到回调函数的句柄,从而实现对回调函数的调用。 17.1.3 手工代码式GUI程序 手工代码式的GUI程序要求用户自行编码创建各界面对象,并设置其属性。下面先介绍一个简单的例子,其目的是使读者对MATLAB GUI程序的内部结构有一个更加直观、清醒的认识。总结GUI程序设计的基本步骤如下。 确定用户需求,明确GUI程序的功能:用户需要程序完成什么样的任务?用户如何向程序发出任务请求?程序如何将结果返回给用户? 绘出GUI的布局(Layout)草图。GUI界面设计,界面设计要着重考虑到界面的美观、简洁,可操作性强。 GUI程序设计,主要是回调函数的设计,包括回调函数与界面的通信及回调函数之间的数据共享等,这是GUI程序设计的主要难点之一。 验证和调试GUI。 以上GUI程序设计的步骤通常不能一蹴而就,往往需要数次的循环迭代才能设计出优秀的GUI 程序。 17.1.4 GUIDE式GUI程序 通过前面的例子可以看出,手工代码式GUI程序设计方法的缺点在于界面设计不具有直观性。另外回调函数的设计也很烦琐,为了实现数据的共享,经常要用到大量的全局变量,这些全局变量不利于程序的组织和扩展。 用户也许希望像在VC、VB中那样,只需通过鼠标把需要的对象拖曳到目的位置,并设置相关的属性就能得到一个设计良好的GUI界面,这正是下面将要介绍的GUIDE。为此,下面通过一个简单的例子介绍GUIDE式的GUI程序设计方法,其目的主要是了解其设计的主体思路,更详细的内容将在本章后续内容中讨论。 17.1.5 GUIDE界面环境 本小节在前文的基础上进一步介绍GUIDE,主要是GUI界面编辑环境,并简要介绍GUI M文件编辑器的相关操作。 GUIDE创建的GUI程序由两个文件组成: FIG文件,即用户界面文件; M文件,保存了GUI程序所有的代码,用户所有的编码工作都在该文件中完成。 17.2 GUI界面设计 界面设计在软件设

文档评论(0)

基本资料 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档