- 1、本文档共22页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 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界面设计 界面设计在软件设
您可能关注的文档
- 20147月毕业硕士研究生论文答辩秘书培训.ppt
- 20148月14日埃博拉出血热防控培训-final.ppt
- 20149月自制人教地理八级上册第一章第一节疆域.ppt
- 20153月企业核心竞争力.ppt
- 131132且(and)或(or)新人教A选修1-1.ppt
- 201354心理咨询师基础串讲.ppt
- 201411月份青岛市房地产市场研究报告.ppt
- 2013311阶段复习指导(一)310.ppt
- 2015422第八章东半球其他的地区和国家第一节中东.ppt
- 20130119-变态心理学.ppt
- 第14课 历史上的疫病与医学成就 课件--高二历史统编版(2019)选择性必修2.pptx
- 第1课 中国古代政治制度的形成与发展 课件--高二上学期历史统编版(2019)选择性必修1国家制度与社会治理.pptx
- 2.1 充分发挥市场在资源配置中的决定性作用 课件高中政治统编版必修二经济与社会_1.pptx
- 第21课 南京国民政府的统治和中国共产党开辟革命新道路 课件高一统编版2019必修中外历史纲要上册.pptx
- 第六课 掌握演绎推理方法和第七课 学会归纳推理与类比推理 课件-高考政治一轮复习统编版选择性必修三逻辑与思维.pptx
- 1.1 国家是什么 课件高中政治统编版选择性必修一当代国际政治与经济_2.pptx
- 2.2 单一制和复合制 课件高中政治统编版选择性必修一当代国际政治与经济_1.pptx
- 第19课 北洋军阀统治时期的政治、经济与文化 课件-高一统编版2019必修中外历史纲要上册.pptx
- 第六单元 辛亥革命与中华民国的建立 课件三历史统编版(2019)必修中外历史纲要上册一轮复习.pptx
- 第七课 继承发展中华优秀传统文化课件-2025届高考政治一轮复习统编版必修四哲学与文化 .pptx
文档评论(0)