第九讲 MATLAB GUI图形用户界面.ppt

  1. 1、本文档共38页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
设计原则和一般步骤 图形用户界面设计工具介绍 用户控件的制作 用户菜单的制作 回调函数 M函数文件实现图形用户界面 实验一:计算器程序 §9.1设计原则和一般步骤 1) 分析界面所要实现的主要功能,明确设计任务。 2) 绘界面草图,注意从使用者的角度来考虑界面布局。 3) 利用GUI设计工具制作静态界面。 4) 编写动态功能程序。 注意: 1) 先完成大致界面布局,再编写功能程序。 2) 界面风格要一致,且符合使用习惯。例如,一般习惯图形区在上面或左面,控制区在下面或右面等等。 例如,以本次试验的内容“计算器”为例。 1) 功能分析:完成数字的四则运算,以及一部分常用的科学计算:sin, cos, log等等。 2) 界面草图:可以有多种风格的界面。给出几种设计草图。 草图一 草图二 草图三 3) 利用GUI设计工具实现草图的布局,caculator.fig。 4) 编写相应的程序完成计算器的各项功能, caculator.m。 §9.2 图形用户界面设计工具介绍 MATLAB6.5版本的GUI设计工具较前面的版本有很大的改善,设计界面变化很大。 打开GUI设计工作台的命令: guide %打开设计工作台启动界面 guide file %在工作台中打开文件名为file的用户界面 菜单项[ File:New-GUI ] %打开设计工作台启动界面 注意:guide命令中文件名不区分大小写。 打开的GUI启动界面提供新建界面( Create New GUI )或打开已有界面文件( Open Existing GUI )的属性页。新建界面可以选择空白界面、包含有控件的模板界面、包含有轴对象和菜单的模板界面、标准询问窗口等选项。 选择任意一项都会打开GUI设计工作台,对界面静态组成部分进行的具体的修改都在工作台实现。 GUI设计工具的启动界面 GUI设计工作台 §9.3 用户控件的制作 用户控件列表: 以“计算器”界面草图一为例。 1. 初步布局,根据草图将控件选择区的相应控件拖拉到设计工作区的相应位置。 2. 修改控件属性 每一个控件都不可能是完全符合界面设计要求的,需要对其属性进行设置,以获得所需的界面显示效果。 下面对各控件的主要属性进行一下说明。 1) 双击设计工作区的空白部分,打开整个图形窗的属性框。 MunuBar: none %图形窗是否使用标准菜单 Name: caculator %图形窗名称 Resize: off %图形窗不能缩放 Tag: mainWnd %图形窗的句柄 handles.mainWnd 2) 静态文本编辑框的属性设置。 FontSize: 15 %字体大小 FontUnits: points %字体大小的度量单位 HorizontalAlignment: Center %对齐方式 String: Expression %待显示的字符 Tag: text1 %该静态文本框的句柄handles.text1 Units: points %文本框度量单位 3) 可编辑文本框的属性设置。 String: 0 %初始状态下显示数字0 Tag: pExp %可编辑文本框的句柄 其它和静态文本框相同 4) 单功能按钮属性设置。以按钮“1” 为例 String: 1 Tag: p1 其它和静态文本框相同。 3. 精细调整 利用对齐工具,排列控件的位置,使控件的大小、位置更加协调。 4. 界面激活 保存静态界面后,利用工具栏上的运行按钮激活该界面。激活后可以看到两个同名文件:caculator.m和caculator.fig。 caculator.m文件在M文本编辑器中打开, caculator.fig文件显示为操作界面,但是无法实现任何功能,需要编写回调函数。 §9.4 回调函数 在M文本编辑器中打开caculator.m文件,可以看到自动生成的回调函数,该函数的命名利用对象句柄进行区分,没有任何执行语句。 回调函数:Tag_Callback(hObject, eventdata, handles),通过加入自己的处理语句,可以实现所需的功能。 其中:hObject是该控件的句柄;eventdata是备用参数,目前没有定义;handles是用户数据,本身是一个结构数组,存放了当前窗口的所有对象的句柄,包括图形窗本身、所有控件和菜单的句柄。并且可以增加一些域用来传递用户数据。 利用guidata( H, handles )可以更新 H 的用户数据。 先设5个参数 handles.start=1; %不能一开始输入运算符号 handles.term=0;

文档评论(0)

小教资源库 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档