matlab图形界面编程.ppt
《matlab图形界面编程.ppt》由会员分享,可在线阅读,更多相关《matlab图形界面编程.ppt(79页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第九章 图形界面编程(GraphicalUserInterface,GUI)一、常用对话框的设计一、常用对话框的设计二、图形界面设计二、图形界面设计三、可视化图形用户界面设计三、可视化图形用户界面设计一、常用对话框的设计一、常用对话框的设计(1)创建对话框创建对话框dialogh=dialog(PropertyName,ProperValue,.)返回一个对话框句柄。该函数产生一个图形对象返回一个对话框句柄。该函数产生一个图形对象并为对话框设置推荐的图形属性。并为对话框设置推荐的图形属性。Note:该函数的属性是图形该函数的属性是图形Figure的属性的属性Example:h=dialog(N
2、ame,图形对话框图形对话框,Position,.240,240,200,50,Color,r)(2)创建输入对话框创建输入对话框inputdlga)answer=inputdlg(prompt)b)answer=inputdlg(prompt,title)c)answer=inputdlg(prompt,title,lineNo)d)answer=inputdlg(prompt,title,lineNo,defAns)e)answer=inputdlg(prompt,title,lineNo,defAns,Resize)对应描述对应描述:prompt是一个包含是一个包含提示提示字符串的数组。
3、字符串的数组。a)创建一个模式对话框并返回用户在数组中输入的内容创建一个模式对话框并返回用户在数组中输入的内容b)title为对话框指定一个标题为对话框指定一个标题c)lineNo为用户的每个输入值指定输入的行数,可以是标量、为用户的每个输入值指定输入的行数,可以是标量、列向量或矩阵。列向量为一个提示符指定输入的行数;矩阵列向量或矩阵。列向量为一个提示符指定输入的行数;矩阵是是m*2矩阵,其中矩阵,其中m是对话框中提示符的个数,矩阵的第一是对话框中提示符的个数,矩阵的第一列为指定输入的行数;第二列指定字符的域宽。列为指定输入的行数;第二列指定字符的域宽。d)defAns指定每个提示符的默认值指
4、定每个提示符的默认值e)Resize说明对话框是否改变尺寸,取值说明对话框是否改变尺寸,取值on和和off。例ans=inputdlg(请输入题号(1-10),输入0退出,Matlab zuoye)例pp=a=?,b=?ans=inputdlg(pp,Input Param)例例inputdlg(AAAAAAA)inputdlg(AAAAAAA,inputdialog)inputdlg(AAAAAAA,inputdialog,2)inputdlg(AAAAAAA,inputdialog,1,OOOOOOOO)inputdlg(AAAAAAA,inputdialog,1,OOOOOOOO,on)
5、Cellarray例例创建输入一个整数和色图名称的对话框,每行只创建输入一个整数和色图名称的对话框,每行只允许输入一行。允许输入一行。prompt=EnterMatrixsize,Entercolomapname;title=Inputdataforpeaksfunction;lines=1;def=20,hsv;answer=inputdlg(prompt,title,lines,def)(3)创建消息对话框创建消息对话框msgboxa)msgbox(message)b)msgbox(message,title)c)msgbox(message,title,icon)d)msgbox(mes
6、sage,title,custom,iconData,iconCmap)e)msgbox(.,createMode)f)h=msgbox(.)对应描述:对应描述:a)产生一个消息对话框产生一个消息对话框b)title为消息对话框指定标题为消息对话框指定标题c)Icon指定在消息对话框中显示哪一个图标指定在消息对话框中显示哪一个图标.icon可以是可以是none、error、help、warn、customd)定义一个用户定制的图标。定义一个用户定制的图标。iconData包含着定义图标的图形数据;包含着定义图标的图形数据;iconCmap是图形所用的色图是图形所用的色图e)指定消息框是否为模式
7、化的,如果是非模式化的,是否要取代其指定消息框是否为模式化的,如果是非模式化的,是否要取代其它有同样标题的消息框。它有同样标题的消息框。createMode取取modal、non-modal和和replacef)返回一个对话框的句柄返回一个对话框的句柄h,它是一个图形对象的句柄,它是一个图形对象的句柄。Note:消息对话中的消息自动换行来适应具有适当消息对话中的消息自动换行来适应具有适当尺寸的图框。尺寸的图框。Message是一个字符串向量、字符串是一个字符串向量、字符串矩阵或数组。矩阵或数组。例例mess=Inputdlghelp,Listdlghelp;Msgboxhelp,.Pagedl
8、ghelpmsgbox(mess,MyDialogHelp,help)mess=InputdlghelpListdlghelpMsgboxhelpPagedlghelp(4)创建错误对话框创建错误对话框errordlga)errordlgb)errordlg(eerrorstring)c)errordlg(eerrorstring,dlgname)d)errordlg(eerrorstring,dlgname,on)e)h=errordlg(.)相应描述:相应描述:a)显示一个包含字符串显示一个包含字符串”Thisisthedefaulterrorstring”的名为的名为”ErrorDial
9、og”的对话框的对话框b)显示一个包含字符串显示一个包含字符串”errorstring”的名为的名为”ErrorDialog”的对话框的对话框;c)显示一个包含字符串显示一个包含字符串”errorstring”的名的名”dlgname”的对话的对话框框d)指定是否取代一个已经存在的有相同名字的对话框。指定是否取代一个已经存在的有相同名字的对话框。on表表示把一个有相同名字的出错对话框提在前台;示把一个有相同名字的出错对话框提在前台;e)返回一个错误对话框句柄。返回一个错误对话框句柄。Note:MATLAB自动改变对话框的大小来适应自动改变对话框的大小来适应字符串字符串errorstring的长
10、度的长度.例例errordlgerrordlg(Filenotfound)errordlg(Filenotfound,FileError)errordlg(Filenotfound,FileError,on)(5)创建问题对话框创建问题对话框questdlgnbutton=questdlg(qstring)打开问题提示对话框,有打开问题提示对话框,有三个按钮,分别为:三个按钮,分别为:yes,no和和cancel,questdlg确定提确定提示信息。示信息。nbutton=questdlg(qstring,title)title确定对话框标题。确定对话框标题。nbutton=questdlg(
11、qstringtitle,default)当按回车键当按回车键时,返回时,返回default值值,default必须是必须是yes,no或或cancel之一。之一。nbutton=questdlg(qstring,title,str1,str2,default)打开问题提示对话框,有两个按钮,分别由打开问题提示对话框,有两个按钮,分别由str1和和str2确定,确定,qstdlg确定提示信息,确定提示信息,default必须是必须是str1或或str2之一。之一。nbutton=questdlg(qstring,title,str1,str2,str3,default)打开问题提示对话框,打开
12、问题提示对话框,有三个按钮,分别由有三个按钮,分别由str1,str2和和str3确定,确定,qstdlg确定提示信息,确定提示信息,default必须是必须是str1,str2或或str3之一。之一。例例生成一个问询对话框,询问用户是否继续生成一个问询对话框,询问用户是否继续一个假定的操作。一个假定的操作。button=questdlg(Doyouwanttocontinue?,ContinueOperation,Yes,No,Help,No)ifstrcmp(button,Yes)disp(Creatingfile)elseifstrcmp(button,No)disp(Canceledf
13、ileoperation)elseifstrcmp(button,Help)disp(Sorry,nohelp)end(6)创建警告对话框创建警告对话框warndlgh=warndlg(warningstring,dlgname)打开警告信息对话框,显示打开警告信息对话框,显示warningstring信息,信息,dlgname确定对话框标题,确定对话框标题,h为返回对话句柄。为返回对话句柄。例例warndlg(PressingOKwillclearMemory,.Warning!)(7)显示帮助对话框显示帮助对话框helpdlghelpdlghelpdlg(helpstring)helpdl
14、g(helpstring,dlgname)h=helpdlg(.)Note:MATLAB将将helpstring中的内容自动换行来适中的内容自动换行来适应一个对话框的长度。应一个对话框的长度。例例helpdlghelpdlg(youcanselect10pointsfromfigure)helpdlg(youcanselect10pointsfromfigure,.pointsselection)(8)创建选择列表内容的对话框创建选择列表内容的对话框listdlgSelection,ok=listdlg(ListString,S,.)其中,其中,nSelection是已经选择的字符串的索引向量
15、;是已经选择的字符串的索引向量;在只有一个选项的模式下,它的长度为在只有一个选项的模式下,它的长度为1;当点击当点击OK按钮时,按钮时,ok=1;当点击当点击Cancel按钮时,按钮时,ok=0;当当ok=0时时,Selection=;对话框还有一个对话框还有一个Selectall按钮。按钮。n输入参数和其值的形式列表如下:输入参数和其值的形式列表如下:参数参数描述描述ListString指定列表选框的字符串数组指定列表选框的字符串数组SelectionMode 值为值为sigle或或multipleListSize用像素来衡量尺寸,用像素来衡量尺寸,wh,16030InitialValue最
16、初被选择的列表框选项的索引向量,默认值最初被选择的列表框选项的索引向量,默认值为为1,即第一项,即第一项Name对话框标题名称对话框标题名称PromptString在列表框上部的正文中出现的字符串的数组或在列表框上部的正文中出现的字符串的数组或矩阵。默认值为矩阵。默认值为OKStringOK按钮上的字符串,默认为按钮上的字符串,默认为OKCancelStringCancel按钮上的字符串,默认为按钮上的字符串,默认为Canceluh用户界面控制按钮的高度,用用户界面控制按钮的高度,用pixel表示表示,18fus框架和用户截面控制按钮的间隔,框架和用户截面控制按钮的间隔,pixel,18ffs
17、框架数字的间隔框架数字的间隔,pixel,8例例创建用户从当前目录中选一个文件的对话框创建用户从当前目录中选一个文件的对话框。函数将返回一个向量,该向量的第一个元素是函数将返回一个向量,该向量的第一个元素是被选文件的索引,第二个元素在没有做选择时被选文件的索引,第二个元素在没有做选择时为为0,做了选择后为,做了选择后为1。d=dir;str=d.names,v=listdlg(PromptString,Selectafile:,.SelectionMode,single,ListString,str)例例创建一个自己的列表对话框创建一个自己的列表对话框str=AAAAAA,BBBBBBB,CC
18、CCCCC,DDDDDDD;s,v=listdlg(ListString,str,SelectionMode,multiple,.ListSize,200,100,Name,MyListDialog,.PromptString,Pleaseselectfollowoptions,ffs,18)MATLAB(9)创建显示页面的版面对话框创建显示页面的版面对话框pagedlga)pagesetupdlgb)pagesetupdlg(fig)对应描述对应描述a)对当前图形显示一个页面的版面对话框,使用户可对当前图形显示一个页面的版面对话框,使用户可以进行以进行页面设置页面设置b)对由对由fig指定的
19、图形显示一个页面设置对话框指定的图形显示一个页面设置对话框例例figurex=0:pi/100:2*pi;y=sin(x);plot(x,y)pagesetupdlg(10)创建显示打印对话框创建显示打印对话框printdlga)printdlgb)printdlg(fig)c)printdlg(-crossplatform,fig)对应描述对应描述a)打印当前的图形打印当前的图形b)生成一个对话框,由此用户可以打印句柄生成一个对话框,由此用户可以打印句柄fig指指定的图形窗口。但该命令不能打印用户菜单定的图形窗口。但该命令不能打印用户菜单c)对微软的对微软的Windows操作系统显示一种标准
20、的交操作系统显示一种标准的交叉平台式的叉平台式的MATLAB打印对话框。打印对话框。例例t=0:pi/100:2*pi;y=sin(x);plot(x,y)printdlg(11)进程条进程条nh=waitbar(x,title)显示以显示以title为标题的进程条,为标题的进程条,x为进程条的比例长为进程条的比例长度,其值必须在度,其值必须在0到到1之间,之间,h为返回的进程条对象为返回的进程条对象的句柄。的句柄。nwaitbar(x,title,creatcancelbtn,button_callback)在进程条上使用在进程条上使用creatcancelbtn参数创建一个参数创建一个撤销
21、按钮,在进程中按下撤销按钮将调用撤销按钮,在进程中按下撤销按钮将调用button_callback函数。函数。nwaitbar(.,property_name,property_value,.)选择其它由选择其它由prompt_name定义的参数,参数值由定义的参数,参数值由prompt_value指定。指定。例例clch=waitbar(0,pleasewait.);pause;%暂停,击任一键继续暂停,击任一键继续fori=1:1000waitbar(i/1000,h,MyProcess.)endclose(h)(12)打开文件对话框打开文件对话框uigetfilenuigetfile显示
22、一个用于检索一个文件的对话框显示一个用于检索一个文件的对话框,列出了当前目列出了当前目前中的文件和目录。前中的文件和目录。nuigetfile(FilterSpec)FilterSpec确定最先显示的文章,它可以用通配符确定最先显示的文章,它可以用通配符*。nuigetfile(FilterSpec,DialogTitle)nuigetfile(FilterSpec,DialogTitle,x,y)把对话框定位在把对话框定位在x,y,这里,这里x和和y是距左边界和上边是距左边界和上边界的距离,以像素为单位。界的距离,以像素为单位。nfname,pname=uigetfile(.)返回在对话框中
23、选择的文件的名称和路径。返回在对话框中选择的文件的名称和路径。fname保存被选中的文件的名称,保存被选中的文件的名称,pname保存路径。保存路径。例例列出选定目录中的所有列出选定目录中的所有.m文件文件fname,pname=uigetfile(C:DocumentsandSettingsyfzxMyDocumentsMATLAB*.m,SampleDialogBox)fname=example5_24.mpname=C:DocumentsandSettingsyfzxMyDocumentsMATLAB(13)保存文件对话框保存文件对话框uiputfilenuiputfile显示一个中写入
24、文件名的对话框显示一个中写入文件名的对话框,列出了当前目前中的文列出了当前目前中的文件和目录。件和目录。nuiputfile(InitFile)显示的对话框包含当前路径中由显示的对话框包含当前路径中由InitFile确定的文件的确定的文件的列表。列表。InitFile可以是一个文件的全名,也可以包含通可以是一个文件的全名,也可以包含通配符配符*。nuiputfile(InitFile,DialogTitle)nuiputfile(InitFile,DialogTitle,x,y)把对话框定位在把对话框定位在x,y,这里,这里x和和y是距左边界和上边界的是距左边界和上边界的距离,以像素为单位。距
25、离,以像素为单位。nfname,pname=uiputfile(.)返回在对话框中选择的文件的名称和路径。返回在对话框中选择的文件的名称和路径。fname保存保存被选中的文件的名称,被选中的文件的名称,pname保存路径。保存路径。例例显示一个标题为显示一个标题为SaveFilename,文件名为,文件名为aaa.m的对话框。的对话框。fname,pname=uiputfile(aaa.m,SaveFilename)fname=aaa.mpname=C:DocumentsandSettingsyfzx桌面桌面(14)弹出式菜单函数弹出式菜单函数menu K=MENU(HEADER,ITEM1,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matlab 图形界面 编程
限制150内