Matlab GUI 编程中文参考手册
Matlab GUI 编程中文参考手册
用户界面(或接口)是指:人与机器(或程序)之间交互作用的工具和方法。如键盘、鼠标、跟踪球、
话筒都可成为与计算机交换信息的接口。
图形用户界面(Graphical User Interfaces ,GUI)则是由窗口、光标、按键、菜单、文字说明等对象
(Objects)构成的一个用户界面。用户通过一定的方法(如鼠标或键盘)选择、激活这些图形对象,使计
算机产生某种动作或变化,比如实现计算、绘图等。
假如读者所从事的数据分析、解方程、计算结果可视工作比较单一,那么一般不会考虑 GUI 的制作。但是
如果读者想向别人提供应用程序,想进行某种技术、方法的演示,想制作一个供反复使用且操作简单的专
用工具,那么图形用户界面也许是最好的选择之一。
MATLAB 为表现其基本功能而设计的演示程序 demo 是使用图形界面的最好范例。MATLAB 的用户,在指令窗
中运行 demo 打开那图形界面后,只要用鼠标进行选择和点击,就可浏览那丰富多彩的内容。
即便比较熟悉 MATLAB 的读者,在他初次编写 GUI 程序时,也会感到棘手。为使读者获得制作自己 GUI 的体
验,本章“入门”节提供了一个简单的示例。读者只要输入所提供的程序,就可引出相应的界面。
本章第 2 节叙述图形用户界面的设计原则和一般制作步骤。第3、4 节分别介绍用户菜单、用户控件的制作。
出于“由浅入深”的考虑,前 4 节制作 GUI 是通过 M 脚本文件实现的。利用 M 函数文件制作 GUI ,需要解
决数据传递问题,为此专设第 5 节给予阐述和示例。MATLAB 版为方便用户制作图形界面,提供了一个
博客石油--精彩转载交互式的设计工具 guide 。关于该工具的使用方法,被放在第 6 节中,以一个综合例题为设计目标逐步展
更多精彩请登陆开。
读者,假如要比较准确的理解本章程序和掌握本章内容,请先阅读第 10 章关于图柄的内容。
入门
【*例 -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(,,str,'fontsize',13);
h_fig=get(H,'parent');
set(h_fig,'unit','normalized','position',[,,,]);
h_axes=axes('parent',h_fig,...
'unit','normalized','position',[,,,],...
'xlim',[0 15],'ylim',[0 ],'fontsize',8);
图 -1 产生坐标轴
(2)在坐标框右侧生成作解释用的“静态文本”和可接受输入的“编辑框”:
h_text=uicontrol(h_fig,'style','text',...
'unit','normalized','position',[,,,],...
'horizontal','left','string',{'输入阻尼比系数','zeta ='});
h_edit=uicontrol(h_fig,'style','edit',...
'unit','normalized','position',[,,,],...
'horizontal','left',...
'callback',[...
'z=str2num(get(gcbo,''string''));',...
't=0::15;',...
'for k=1:length(z);',...
's2=tf(1,[1 2*z(k) 1]); ',...
'y(:,k)=step(s2,t);',...
'plot(t,y(:,k));',...
Matlab+GUI编程中文参考手册 来自淘豆网m.daumloan.com转载请标明出处.