通用对话框可以说是程序内部与计算交互的重要窗口,也是程序与用户互动的重要门户。引入通用对话框对程序交互往往能起到锦上添花的作用,下面就来对matlab通用对话框进行一一介绍:
一、文件选择对话框 —— uigetfile函数
功能:打开用于打开文件的对话框,获取所需打开文件的路径、文件名、筛选器索引等信息。
常用调用方式:[file,path,indx] = uigetfile(filter,title)
示例代码
代码语言:javascript复制[file,path,indx] = uigetfile({'*.txt;*.dat','文本文件 (*.txt,*.dat)';},'Select a File');
二、文件保存对话框 —— uiputfile函数
功能:打开用于保存文件的对话框,获取所需保存文件的路径、文件名、保存标识等信息。
常用调用方式:[file,path,indx] = uiputfile(filter,title)
示例代码
代码语言:javascript复制 [file,path,indx] = uiputfile({'*.txt;*.dat','文本文件 (*.txt,*.dat)';},'保存文件');
三、文件夹选择对话框 —— uigetdir函数
功能:打开文件夹选择对话框,获取选择文件夹完整路径。
常用调用方式:selpath = uigetdir(path,title)
示例代码
代码语言:javascript复制selpath = uigetdir('D:DocumentsMatlab','Matlab工作目录');
四、消息对话框 —— msgbox函数
功能:创建消息对话框,弹出用户指定提示信息。
常用调用方式:msgbox(message,title,icon)
示例代码
代码语言:javascript复制f = msgbox('看matlab爱好者公众号推文的时间到了!', '温馨提示','help');
五、帮助对话框 —— helpdlg函数
功能:创建帮助对话框,作用与msgbox类似。
常用调用方式:helpdlg(msg,title)
示例代码
代码语言:javascript复制helpdlg('看matlab爱好者公众号推文的时间到了!','温馨提示');
六、警告对话框 —— warndlg函数
功能:创建警告对话框,作用与msgbox类似。
常用调用方式:warndlg(msg,title)
示例代码
代码语言:javascript复制warndlg('这是警告信息!','警告提示');
七、错误对话框 —— errordlg函数
功能:创建错误对话框,作用与msgbox类似。
常用调用方式:errordlg(msg,title)
示例代码
代码语言:javascript复制errordlg('不关注matlab爱好者公众号是不对的!','开玩笑的了!');
八、自定义对话框 —— dialog函数
功能:创建空的模态对话框,实现自定义组合。
常用调用方式:d = dialog(Name,Value)
示例代码
代码语言:javascript复制d = dialog('Position',[400 400 400 100],'Name','自定义对话框');
txt = uicontrol(d,'Style','togglebutton','Position',[100 50 210 40],'String','点我绘图!','Callback','x = 0:pi/20:pi;y = sin(cos(x));plot(x,y) ');
九、进度条对话框 —— waitfor函数
功能:阻止执行并等待条件对话框,实时反应程序运行进度。
常用调用方式:waitfor(mo,propname,propvalue)
示例代码
代码语言:javascript复制waitbar(0,'程序运行中,请耐心等待......','name','进度条测试');
for m = 1:1000
waitbar(m/1000)
end
十、提问对话框 —— questdlg函数
功能:创建问题对话框,获取不同用户反馈。
常用调用方式:answer = questdlg(quest,title,btn1,btn2,btn3,defbtn)
示例代码
代码语言:javascript复制answer = questdlg('您关注matlab爱好者公众号了吗?', ...
'关注菜单', ...
'已经关注','马上关注','准备关注','准备关注');
% Handle response
switch answer
case '已经关注'
daan = [answer,' matlab爱好者.'];
msgbox(daan);
case '马上关注'
daan = [answer,' matlab爱好者.'];
msgbox(daan);
case '准备关注'
daan = [answer,' matlab爱好者.'];
msgbox(daan);
end
十一、输入对话框 —— inputdlg函数
功能:创建收集用户输入的对话框,获取用户输入信息。
常用调用方式:answer = inputdlg(prompt,title,dims,definput)
示例代码
代码语言:javascript复制prompt = {'matlab爱好者的公众号是多少?','最喜哪个小编的推文?'};
title = 'matlab爱好者公众号知识问答';
dims = [1 60];
definput = {'matlabaihaozhe','都很棒哦!'};
answer = inputdlg(prompt,title,dims,definput);
十二、列表选择对话框 —— listdlg函数
功能:创建列表选择对话框,获取用户输入信息。
常用调用方式:[indx,tf] = listdlg('ListString',list,Name,Value)
示例代码
代码语言:javascript复制list = {'云屿','过冷水','海南一号','阿辉'};
[indx,tf] = listdlg('ListString',list,'ListSize',[240 100],'name','选择最喜爱的小编');
通用对话框暂且介绍这么多,感兴趣的小伙伴话可试试uisetfont(字体设置)、uisetcolor (颜色选择)等对话框的使用。如有问题,欢迎在推文下方留言。