图形用户界面设计(GUI).ppt

上传人:牧羊曲112 文档编号:5252770 上传时间:2023-06-19 格式:PPT 页数:41 大小:259.49KB
返回 下载 相关 举报
图形用户界面设计(GUI).ppt_第1页
第1页 / 共41页
图形用户界面设计(GUI).ppt_第2页
第2页 / 共41页
图形用户界面设计(GUI).ppt_第3页
第3页 / 共41页
图形用户界面设计(GUI).ppt_第4页
第4页 / 共41页
图形用户界面设计(GUI).ppt_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《图形用户界面设计(GUI).ppt》由会员分享,可在线阅读,更多相关《图形用户界面设计(GUI).ppt(41页珍藏版)》请在三一办公上搜索。

1、2023/6/19,1,图形用户界面设计(GUI),GUI:Graphical User Interfaces图形对象的概念 指图形系统中的基本图元。,2023/6/19,2,窗口对象,线对象,轴对象,2023/6/19,3,面对象,轴对象,像对象,块对象,线对象,文字对象,2023/6/19,4,父对象子对象,窗口figure,窗口n,窗口2,控件control,菜单menu,轴axis,线line,面surface,文字text,块patch,像Image,2023/6/19,5,2023/6/19,6,什么是句柄?句柄是图形对象的标识代码,标识代码含有图形对象的各种必要的属性信息。各图形

2、对象的句柄数据格式:根屏幕 0 图形窗口 整数,表示图形窗口数 其它对象 对应的符点数句柄图形充分体现了面向对象的程序设计。,一、图形句柄(handle),2023/6/19,7,句柄属性的设置与修改get:获得句柄图形对象的属性和返回某些 对象的句柄值set:改变图形对象的属性专用函数:gcf:当前窗口对象的句柄 Get Current Figuregca:当前轴对象的句柄 Get Current Axes,二、图形对象属性的获得与设置,2023/6/19,8,三、可视化设计工具-guide,1)由控件组成界面2)修改控件属性3)自动生成m文件、fig文件4)控件回调函数 callback的

3、编辑(完成某种功能),2023/6/19,9,matlab7helptecdoccreating_guiexample sample_gui.m sample_gui.fig,2023/6/19,10,动画效果,运用视觉暂留的现象,将静态图形制作成动画两种方法:将多幅静态图存放到图形缓冲区(帧矩阵)内,再逐一的播放出来。getframe,movie利用图形对象的EraseMode属性,更新运动部分的图案,保持图形背景图案不变,示例,第6讲 程序设计,2023/6/19,12,主要内容,M文件 M文本文件 M函数文件程序设计 顺序结构 选择结构 循环结构 M函数文件,2023/6/19,13,M

4、ATLAB有两种工作方式:,交互式的命令行工作方式,M文件的程序工作方式,2023/6/19,14,用MATLAB语言编写的程序,称为M文 件,是一个简单的ASCII码文本文件.M文件有两类:命令文件(Script File)函数文件(Function File)新建M文件,一.M文件,2023/6/19,15,(1).命令文件 简单的m文件 命令文件实际上是一串指令的集合,与在命令窗口逐行执行文件中的所有指令,其结果是一样的。没有输入输出参数。m1.m 求解线性代数方程组的根 A=2-1 1-1;2-1 0-3;3 0-1 1;2 2-2 5;b=1;2;-3;-6;X=Ab,2023/6/

5、19,16,m2.m 筛选出某些数据 load position for m=1:100 if position(m,2)0 p(m)=position(m,2);end end,2023/6/19,17,(2).函数m文件 需要输入变量,返回输出变量用户可以根据需要编辑自己的m函数文件,它们可以像库函数一样方便的调用,从而极大地扩展了matlab 的能力。,2023/6/19,18,编写函数tran(),实现直角坐标(x,y)与极坐标(r,)之间的转换。,function r,theta=tran(x,y)r=sqrt(x*x+y*y);theta=atan(y/x);,调用 tran函数

6、x=3;y=4;r,t=tran(x,y),tran.m,2023/6/19,19,二.程序设计,顺序结构 选择结构 循环结构,2023/6/19,20,1)顺序结构-数据输入与输出,数据的输入输出函数1.input:用于向计算机输入一个参数调用格式:A=input(提示信息,选项);注:s选项,则允许用户输入一个字符串。2.disp:命令窗口输出函数。调用格式:disp(输出项)注:输出项为字符串或矩阵。,2023/6/19,21,3 pause:暂停程序的执行。调用格式:pause(延迟秒数)注:如果省略延迟时间,则将暂停程序,直到用户按任一键后程序继续执行。,2023/6/19,22,例

7、:键盘输入两个大小不等的数a,b。比较并 显示它们的大小关系。,a=input(a=);b=input(b=);if ab disp(a b);else disp(ab);end,2)选择结构,2023/6/19,23,程序段:,n=input(please input a number:);if n 0 disp(Input must be positive);elseif rem(n,2)=0 a=n/2else a=(n+1)/2 end,2023/6/19,24,switch num case-1 disp(child);case 0 disp(the young);case 1 di

8、sp(adult);otherwise disp(the old);end,例:根据变量 num 的值来决定显示的内容。,2023/6/19,25,在条件表达式中,通常都是由 关系操作符,=,=,=等 逻辑操作符&,|,等 逻辑函数:isequal 若是相等则为真 isempty 若是空矩阵则为真 isstr 若是字符串则为真,2023/6/19,26,x(1)=1;for n=2:6 x(n)=2*x(n-1);end,x=1 2 4 8 16 32,3)循环结构,2023/6/19,27,例1:利用for循环求1!+2!+3!+5!的值例2:求向量x的各元素的平方和,2023/6/19,2

9、8,for 循环变量=矩阵表达式 a=1 2 3;5 6 7;9 10 11执行过程是依次将矩阵的各列元素赋给循环变量,for i=a y=i(1)+i(2)+i(3);end,2023/6/19,29,For example,this while loop finds the first integer n for which n!(n factorial)is a 5-digit number.n=1;while prod(1:n)1e5 n=n+1;endbreak continue 循环嵌套,2023/6/19,30,猜数字:guess.m,游戏开始,会随机产生一个0-100之间的一个

10、整数。由参与者来猜这个数字是几。每猜一次,系统都会提示“猜大了”,还是“猜小了”,一共有10次机会,若10次都没猜对,就 Game over!,2023/6/19,31,函数文件是另一种形式的M文件,每一个函数文件都定义一个函数。事实上,MATLAB提供的标准函数大部分都是由函数文件定义的。例如 inv,abs和 sqrt,利用所给的输入,返回计算所要求的结果。Y=abs(X)函数是一个黑箱.只有函数的输入和输出是可见的,至于函数中的运算过程都是隐含的。,三、M函数文件,2023/6/19,32,type fliplr help fliplr,2023/6/19,33,m函数文件必须由func

11、tion作为引导词,必须遵循如下形式:function 输出形参表=函数名(输入形参表)%注释说明部分 函数体,1 m函数文件格式,2023/6/19,34,编写函数,求半径为r的圆的面积和周长fcircle.m文件代码如下:function s,p=fcircle(r)%CIRCLE calculate the area and perimeter of a circle of%radii rs=pi*r*r;p=2*pi*r;,2023/6/19,35,规则和属性 1.函数名和文件名必须相同。2.函数可以有零个或更多个输入参量,也可以有零个或更多个输出参量。当有一个以上输出变量时,输出变量

12、包含在括号内。例如,V,D=eig(A)3.函数中的变量均为局部变量,不保存在工作空间中。其变量只在函数运行期间有效。函数内变量与MATLAB工作空间之间唯一的联系是函数的参数。,2023/6/19,36,2函数调用,函数文件编制好后,就可调用函数进行计算了。如上面定义fcircle函数后,调用它求圆的面积和周长。函数调用的一般格式是:输出实参表=函数名(输入实参表)area,l=fcircle(1),2023/6/19,37,3 函数所传递参数的可调性,MATLAB在函数调用上有一个与众不同之处:函数所传递参数数目的可调性。凭借这一点,一个函数可完成多种功能。linspace(d1,d2,n

13、)linspace(d1,d2)E=EIG(X)V,D=EIG(X)两个特殊变量 nargin 所用函数的输入参量个数 nargout 所用函数的输出参量个数,2023/6/19,38,【例】nargin用法示例,函数文件examp.m:function f=examp(a,b,c)if nargin=1 f=a;elseif nargin=2 f=a+b;elseif nargin=3 f=(a*b*c)/2;end,命令文件mydemo.m:x=1:3;y=1;2;3;examp(x)examp(x,y)examp(x,y,3),执行mydemo.m后的输出是:ans=1 2 3 ans=

14、2 4 6 ans=21,2023/6/19,39,在调用函数时,MATLAB用两个永久变量nargin和nargout.分别记录调用该函数时的输入实参和输出实参的个数。只要在函数文件中包含这两个变量,就可以准确地知道该函数文件被调用时的输入输出参数个数,从而决定函数如何进行处理。,2023/6/19,40,全局变量:函数可以与其它函数、MATLAB工作空间共享变量。所有的函数都可以对它进行存取和修改。全局变量必须用global说明。,2023/6/19,41,总结 1、新建和编辑m文件 2、m命令文件与m函数文件的区别,各自的作用。3、matlab编程语言:顺序、选择、循环 4、编写简单的m函数,实现特定的功能。5、理解局部变量与全局变量,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号