本站分享:AI、大数据、数据分析师培训认证考试,包括:Python培训Excel培训Matlab培训SPSS培训SAS培训R语言培训Hadoop培训Amos培训Stata培训Eviews培训

matlab界面设计—对话框设计_matlab界面设计实例

matlab培训 cdadata 3303℃

matlab界面设计—对话框设计_matlab界面设计实例

关键词:matlab gui界面设计,matlab界面设计实例,matlab界面设计

课题好几天没有进展了,不知道是我的方法用错了呢,还是其他的原因。先放一下这个问题,做一个界面设计,也挺麻烦的,找了好几天的资料终于今天下午找到了,放在这里以免以后忘记了找不到。嘿嘿。

   MATLAB GUI对话框设计

   dialog   创建对话框
      errordlg 创建错误对话框 
      helpdlg 创建帮助对话框 
      inputdlg 创建输入对话框 
      listdlg 创建选择列表对话框 
      msgbox   创建消息对话框 
      pagedlg 显示页面的版面对话框 
      printdlg 显示打印对话框 
      questdlg 问题对话框 
      uigetfile 文件检索对话框 
      uiputfile 为写入而显示的检索对话框 
      uisetcolor 从对话框交互式设置对象的ColorSpec 
      uisetfont 交互设置对象字体特征 
      warndlg    警告对话框

*对话框设计:在图形用户界面程序设计中,对话框是重要的信息显示和获取输入数据的用户界面对象。

1、公共对话框:

公共对话框是利用windows资源的对话框,包括文件打开、文件保存、颜色设置、字体设置、打印设置等。

1) 文件打开对话框:用于打开文件

uigetfile

uigetfile(‘FilterSpec’)

uigetfile(‘FilterSpec’,’DialogTitle’)

uigetfile(‘FilterSpec’,’DialogTitle’,x,y)

[fname,pname]=uigetfile(…)

2) 文件保存对话框:用于保存文件

uiputfile

uiputfile(‘InitFile’)

uiputfile(‘InitFile’,’DialogTitle’)

uiputfile(‘InitFile’,’DialogTitle’,x,y)

[fname,pname]=uiputfile(…)

3) 颜色设置对话框:用于图形对象颜色的交互设置

c=uisetcolor(‘h_or_c,’DialogTitle’)

4) 字体设置对话框:用于字体属性的交互式设置

uisetfont

uisetfont(h)

uisetfont(S)

uisetfont(h,’DialogTitle’)

uisetfont(S,’DialogTitle’)

S=uisetfont(…)

5)打印设置对话框:用于打印页面的交互式设置

dlg=pagesetupdlg(fig)

pagedlg

pagedlg(fig)

6) 打印预览对话框:用于对打印页面进行预览

printpreview

printpreview(f)

7) 打印对话框

printdlg

printdlg(fig)

printdlg(‘-crossplatform’,fig)

printdlg(-‘setup’,fig)

2、MATLAB专用对话框

1)错误信息对话框:用于提示错误信息

errordlg   打开默认的错误信息对话框

errordlg(‘errorstring’) 打开显示’errorstring’信息的错误信息对话框

errordlg(‘errorstring’,’dlgname’) 打开显示’errorstring’信息的错误信息对话框,对话框的标题由‘dlgname’指定

erordlg(‘errorstring’,’dlgname’,’on’) 打开显示’errorstring’信息的错误信息对话框,对话框的标题由‘dlgname’指定. 如果对话框已存在,’on’参数将对话框显示在最前端。

h=errodlg(…)   返回对话框句柄

例:errordlg(‘输入错误,请重新输入’,’错误信息’)

2) 帮助对话框:用于帮助提示信息

helpdlg     打开默认的帮助对话框

helpdlg(‘helpstring’)   打开显示’errorstring’信息的帮助对话框,

helpdlg(‘helpstring’,’dlgname’) 打开显示’errorstring’信息的帮助对话框, 对话框的标题由‘dlgname’指定

h=helpdlg(…)   返回对话框句柄

例:helpdlg(‘矩阵尺寸必须相等’,’在线帮助’)

3) 输入对话框:用于输入信息

answer=inputdlg(prompt)   打开输入对话框,prompt为单元数组,用于定义输入数据窗口的个数和显示提示信息,answer为用于存储输入数据的单元数组。

answer=inputdlg(prompt,title)   与上者相同,title确定对话框的标题。

answer=inputdlg(prompt,title,lineNo)   参数lineNo可以是标量、列矢量或m×2阶矩阵,若为标量,表示每个输入窗口的行数均为lineNo;若为列矢量,则每个输入窗口的行数由列矢量 lineNo的每个元素确定;若为矩阵,每个元素对应一个输入窗口,每行的第一列为输入窗口的行数,第二列为输入窗口的宽度。

answer=inputdlg(prompt,title,lineNo,defAns) 参数defans为一个单元数组,存储每个输入数据的默认值,元素个数必须与prompt 所定义的输入窗口数相同,所有元素必须是字符串。

answer=inputdlg(prompt,title,lineNo,defAns,Sesize) 参数resize决定输入对话框的大小能否被调整,可选值为on或off.

例:prompt={‘Input Name’,’Input Age’};

title=’Input Name and Age’;

lines=[2 1]’;

def={‘John Smith’,’35’};

answer=inputdlg(prompt,title,lines,def);

4) 列表选择对话框:用于在多个选项中选择需要的值

[selection,ok]=listdlg(‘Liststring’,S,…) 输出参数selection为一个矢量,存储所选择的列表项的索引号,

输入参数为可选项’Liststring’(单元数组), ’SelectionMode’(’single’或’multiple’,  ’ListSize’([wight,height]),   ’Name’ (对话框标题)等

5) 信息提示对话框:用于显示提示信息

msgbox(message)   打开信息提示对话框,显示message信息。

msgbox(message,title)   title确定对话框标题。

msgbox(message,title,’icon’) icon用于显示图标,可选图标包括:none(无图标)/error/help/warn/custom(用户定义)

msgbox(message,title,’custom’,icondata,iconcmap) 当使用用户定义图标时,icondata为定义图标的图像数据,iconcmap为图像的色彩图。

msgbox(…,’creatmode’)   选择模式creatmode,选项为:modal, non_modal, 和replace。

h=msgbox(…)    返回对话框句柄

6) 问题提示对话框:用于回答问题的多种选择

button=questdlg(‘qstring’) 打开问题提示对话框,有三个按钮,分别为:yes,no和cancel,’questdlg’确定提示信息。

button=questdlg(‘qstring’,’title’) title确定对话框标题。

button=questdlg(‘qstring’’title’,’default’) 当按回车键时,返回default值default 必须是yes,no或cancel 之一。

button=questdlg(‘qstring’,’title’,’str1’,’str2’,’default’) 打开问题提示对话框,有两个按钮,分别由str1和str2确定,’qstdlg’确定提示信息,default必须是str1或str2之一。

button=questdlg(‘qstring’, ’title’,’str1’,’str2’,’str3’,’default’) 打开问题提示对话框,有三个按钮,分别由str1, str2和str3确定,’qstdlg’确定提示信息,default必须是str1, str2或str3之一。

7) 进程条:以图形方式显示运算或处理的进程

h=waitbar(x,’title’)   显示以title为标题的进程条,x为进程条的比例长度,其值必须在0到1之间,h为返回的进程条对象的句柄。

waitbar(x,’title’,’creatcancelbtn’,’button_callback’) 在进程条上使用creatcancelbtn参数创建一个撤销按钮,在进程中按下撤销按钮将调用button_callback函数。

waitbar(…,property_name,property_value,…) 选择其它由prompt_name定义的参数,参数值由prompt_value指定。

例:

h=waitbar(0,’pleas wait…’);

for i=1:10000

  waitbar(i/10000,h)

end

  close(h)

MATALB的标准图形用户界面


       1. 消息对话框

         msgbox函数。它不接受用户的任何输入,在用户单击OK按钮后,对话框自动关闭,然后返回程序中继续执行。
         >> msgbox(‘欢迎使用MATLAB’)   % 建立一个没有标题的消息对话框
         >> msgbox(‘欢迎使用MATLAB’,’MATALB’,’warn’)   %% 建立一个有标题的消息对话框

      2. 错误对话框
      errordlg函数。    >> errordlg   %建立一个默认参数的错误对话框
          >> errordlg(‘这是一个错误对话框’,’MATLAB error’) %建立一个名为MATLAB error的错误对话框

       3. 警告对话框
      warndlg函数。      >> warndlg %建立一个默认参数的警告对话框
         >> warndlg(‘这是一个警告对话框’,’MATLAB warning’)

       4. 帮助对话框
      helpdlg函数。
          >> helpdlg(‘你需要帮助吗?’,’MATLAB Help’)

       5. 进度条设置对话框
      waitbar函数。作用是反映程序运行的完成情况。
           h=waitbar(0,’请稍等……’)
           for i=1:10000
              waitbar(i/10000)
           end

       6.输入对话框
      inputdlg函数。
            prompt={‘输入梯形的上底:’,’输入梯形的下底’,’输入梯形的高’};%设置提示字符串
              name=’Enter trapeaia Data’;%设置标题
              numlines=1;%指定输入数据的行数
              defAns={’20’,’50’,’40’};%设定默认值
              Resize=’on’;%设定对话框尺寸可调节
             answer=inputdlg(prompt,name,numlines,defAns,’on’)%创建输入对话框

       7. 列表对话框
      listdlg函数。
            p=path(path,’C:MATLAB7work’);%设置路径,若为当前目录,可以省略这一步
           d=dir(‘C:MATLAB7work’);%获取指针,若为当前目录,则d=dir
            str={d.name};%获取目录内的文件名
            [sel,ok]=listdlg(‘Liststring’,str,’PromptString’,’请选择文件’,’SelectionMode’,’Multiple’)%创建列表对话框。
文件选择成功后,单击“OK‘按钮,系统将选择好的文件序号存入相应向量sel,参数ok的值为1。

       8.问题对话框
      questdlg函数。提出一个问题,等待用户回答。默认下回答按钮有三个:Yes、No、Cancel。当用户单击任何一个按钮时,系统将该按钮名保存在一个变量(ButtonName)中。如果用户关闭对话框,则系统将ButtonName置为空。
    >> ButtonName=questdlg(‘你准备好了吗?’,’MATLAB quest’,’Yes’,’No’,’Cancel’,’Yes’)

       9.路径选择对话框
      uigedir函数。用于用户查找和选择路径。
          >> directoryname=uigetdir(‘C:MATLAB7work’,’浏览文件件’)

       10.选择文件对话框
       uigetfile函数。用于用户选择所需的文件。
            ① >> [fn,pn,fi]=uigetfile(‘*.m’,’select a M-file’)%打开一个选择M文件的对话框,并选择一个文件
          ② [fn,pn,fi]=uigetfile(…
                    {‘*.m;*.fig;*.mat;’,’All MATLAB File(*.m,*.fig,*.mat,*.mdl)’;
                    ‘*.m’,’M-file(*.m)’;…
                    ‘*.fig’,’Figure(*.fig)’;…
                    ‘*.mat’,’MAT-flie(*.mat)’;…
                    ‘*.mdl’,’Models(*.mdl)’;…
                    ‘*.*’,’All Flies(*.*)’},…
                    ‘Pick a file’)
            %打开一个选择多种文件的对话框,并选择一个文件

      11.文件保存对话框
      uiputfile函数。用于保存文件。
        ① >> [fn,pn,fi]=uiputfile(‘*.m’,’Save selected a M-file’)
       ② [fn,pn,fi]=uiputfile(…
                    {‘*.m;*.fig;*.mat;’,’All MATLAB File(*.m,*.fig,*.mat,*.mdl)’;
                    ‘*.m’,’M-file(*.m)’;…
                    ‘*.fig’,’Figure(*.fig)’;…
                    ‘*.mat’,’MAT-flie(*.mat)’;…
                    ‘*.mdl’,’Models(*.mdl)’;…
                    ‘*.*’,’All Flies(*.*)’},…
                    ‘Save a file’)
               %建立多种保存文件的对话框,并选择一个文件

      12.页面设置对话框
       pagesetupdlg函数。用来设置页面的各种属性、参数。调用格式为:
           dlg=pagesetupdlg(fig)
      该命令创建一个页面设置对话框,在该对话框用户可以设置页面的各种属性和参数。该命令只支持单一图形窗口的页面设置,参数fig也必须是单一的图形句柄,不可以是图形句柄向量或simulink图。
           >> fig=figure;
          >> dlg=pagesetupdlg(fig)

       13.打印设置对话框
       printdlg函数。用户可以对各种打印参数进行设置。
       x=[-pi:0.02:pi];
      y=cos(x);
      fig=figure;
      plot(x,y);
     printdlg(fig);%打开Windows打印对话框
     printdlg(‘-crossplatform’,fig);%打开MATLAB打印对话框


       14.颜色设置对话框
      uisetcolor函数。用于用户设置图形的前景色或背景色。
    
① >> c=uisetcolor %建立一个颜色选择对话框
     ② %建立一个颜色对话框,并设置对话框的初始颜色,然后
选择一种颜色用于一个图形对象

        x=[0:0.02:2*pi];
        y=sin(x);
        h=figure;
        plot(x,y);
        c=uisetcolor(h,’select color’)


      15.字体设置对话框
      uisetfont函数。用于用户设置或修改文本字体、坐标轴或设置控件对象的显示文本的字体属性。
    
① >> s=uisetfont    % 建立一个默认字体设置对话框,并设置一种字体。
     
② 对控件中的文本进行设置
       
T1=uicontrol(‘style’,’pushbutton’,’string’,’确定’,…
            ‘position’,[200 320 60 20]);                    %创建一个按钮
       T2=uicontrol(‘style’,’pushbutton’,’string’,’取消’,…
            ‘position’,[200 220 60 20]);                   %创建一个按钮
       s=uisetfont(T1)                                             %打开字体设置对话框
       set(T2,s)                                                        %将T1的设置复制到T2

转载请注明:数据分析 » matlab界面设计—对话框设计_matlab界面设计实例

喜欢 (2)or分享 (0)