MATLAB教程第十章图形用户界面GUI制作.doc

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE PAGE 23 图形用户界面GUI制作 用户界面(或接口)是指:人与机器(或程序)之间交互作用的工具和方法。如键盘、鼠标、跟踪球、话筒都可成为与计算机交换信息的接口。 图形用户界面(Graphical User Interfaces ,GUI)则是由窗口、光标、按键、菜单、文字说明等对象(Objects)构成的一个用户界面。用户通过一定的方法(如鼠标或键盘)选择、激活这些图形对象,使计算机产生某种动作或变化,比如实现计算、绘图等。 假如读者所从事的数据分析、解方程、计算结果可视工作比较单一,那么一般不会考虑GUI的制作。但是如果读者想向别人提供应用程序,想进行某种技术、方法的演示,想制作一个供反复使用且操作简单的专用工具,那么图形用户界面也许是最好的选择之一。 MATLAB为表现其基本功能而设计的演示程序demo 是使用图形界面的最好范例。MATLAB的用户,在指令窗中运行demo 打开那图形界面后,只要用鼠标进行选择和点击,就可浏览那丰富多彩的内容。 即便比较熟悉MATLAB的读者,在他初次编写GUI程序时,也会感到棘手。为使读者获得制作自己GUI的体验,本章“入门”节提供了一个简单的示例。读者只要输入所提供的程序,就可引出相应的界面。 本章第2节叙述图形用户界面的设计原则和一般制作步骤。第3、4节分别介绍用户菜单、用户控件的制作。出于“由浅入深”的考虑,前4节制作GUI是通过M脚本文件实现的。利用M函数文件制作GUI ,需要解决数据传递问题,为此专设第5节给予阐述和示例。这前5节内容对读者理解交互图形界面的工作原理很有帮助。 本章第6节专述MATLAB6.5提供的界面设计工作台的使用。值得指出:该设计工作台与MATLAB5.3版的设计工具有很大不同。新的设计工作台显得更成熟、方便。 在此提醒读者,假如要比较准确的理解本章程序和掌握本章内容,请先阅读第9章关于图柄的内容。 入门 【例10.1-1】对于传递函数为的归一化二阶系统,制作一个能绘制该系统单位阶跃响应的图形用户界面。本例演示:(A)图形界面的大致生成过程;(B)静态文本和编辑框的生成;(C)坐标方格控制键的形成;(D)如何使用该界面。 (1) clf reset H=axes(unit,normalized,position,[0,0,1,1],visible,off); set(gcf,currentaxes,H); str=\fontname{隶书}归一化二阶系统的阶跃响应曲线; text(0.12,0.93,str,fontsize,13); h_fig=get(H,parent); set(h_fig,unit,normalized,position,[0.1,0.2,0.7,0.4]); h_axes=axes(parent,h_fig,... unit,normalized,position,[0.1,0.15,0.55,0.7],... xlim,[0 15],ylim,[0 1.8],fontsize,8); 图 10.1-1 (2) h_text=uicontrol(h_fig,style,text,... unit,normalized,position,[0.67,0.73,0.25,0.14],... horizontal,left,string,{输入阻尼比系数,zeta =}); h_edit=uicontrol(h_fig,style,edit,... unit,normalized,position,[0.67,0.59,0.25,0.14],... horizontal,left,... callback,[... z=str2num(get(gcbo,string));,... t=0:0.1:15;,... for k=1:length(z);,... y(:,k)=step(1,[1 2*z(k) 1],t);,... plot(t,y(:,k));,... if (length(z)1) ,hold on,end,,... end;,... hold off,]); 图 10.1-2 (3) h_push1=uicontrol(h_fig,style,push,... unit,normalized,position,[0.67,0.37,0.12,0.15],... string,grid on,callback,grid on); h_push2=uicontrol(h_fig,style,push,... unit,no

文档评论(0)

yurixiang1314 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档