matlab中uigetfile函数使用方法 (选择文件提示框)

您所在的位置:网站首页 选择文件或文件夹 matlab中uigetfile函数使用方法 (选择文件提示框)

matlab中uigetfile函数使用方法 (选择文件提示框)

2024-01-06 13:28| 来源: 网络整理| 查看: 265

我们在使用matlab写GUI的时候有时候需要选择导入的文件,这样首先就要获得文件的文件名和路径,这就要用到uigetfile() 函数,它可以弹出一个选择文件的提示框,该函数的使用方法如下: file = uigetfile [file,path] = uigetfile [file,path,indx] = uigetfile ___ = uigetfile(filter) ___ = uigetfile(filter,title) ___ = uigetfile(filter,title,defname) ___ = uigetfile(___,‘MultiSelect’,mode) 说明:

file = uigetfile 打开一个模态对话框,其中列出了当前文件夹中的文件。用户可以在这里选择或输入文件的名称。如果文件存在并且有效,当用户点击打开时,uigetfile 将返回文件名。如果用户点击取消或窗口关闭按钮 (X),uigetfile 将返回 0。当用户点击打开时,[file,path] = uigetfile 将返回文件的名称和路径。如果用户点击取消或窗口关闭按钮 (X),uigetfile 将为两个输出参数都返回 0。当用户点击打开时,[file,path,indx] = uigetfile 将返回在对话框中选择的筛选器的索引。___ = uigetfile(filter) 指定文件扩展名,根据该扩展名筛选对话框中显示的文件。可以将此语法与上述语法中的任何输出参数结合使用。通常,只显示文件扩展名匹配的文件。___ = uigetfile(filter,title) 指定对话框标题。要使用默认文件筛选器进行筛选,但指定自定义标题,请使用空引号作为筛选器值。例如: file = uigetfile(’’,‘Select a File’)___ = uigetfile(filter,title,defname) 为文件名字段指定默认文件名。___ = uigetfile(___,‘MultiSelect’,mode) 指定用户是否可以选择多个文件。将模式设置为 ‘on’ 将允许进行多选。默认情况下设置为 ‘off’。 下面举例说明:

1.普通形式 [file,path] = uigetfile(’*.m’)

[file,path] = uigetfile('*.m'); if isequal(file,0) disp('User selected Cancel'); else disp(['User selected ', fullfile(path,file)]); end

在这里插入图片描述 输出结果: User selected H:\Documents\MyCode\surf.m

[file,path,indx] = uigetfile; if isequal(file,0) disp('User selected Cancel') else disp(['User selected ', fullfile(path, file),... ' and filter index: ', num2str(indx)]) end

在这里插入图片描述这里的 index 返回的是选中的类型名的排列序号,上图中index=3

[file,path] = uigetfile('*.m');

这行代码会默认显示.m文件,如果你要显示.txt文件,只需要将.m换成.txt即可,如果要同时显示多行不同类型文件,则用元胞数组表示,例如:{’.m’;’.txt’;……}

在这里插入图片描述2. 给文件框加标题

[file,path] = uigetfile({'*.m';'*.slx';'*.mat';'*.*'}, '标题名');

在这里插入图片描述3. 给筛选器加备注

[file,path,indx] = uigetfile( ... {'*.m;*.mlx;*.fig;*.mat;*.slx;*.mdl',... 'MATLAB Files (*.m,*.mlx,*.fig,*.mat,*.slx,*.mdl)'; '*.m;*.mlx','Code files (*.m,*.mlx)'; ... '*.fig','Figures (*.fig)'; ... '*.mat','MAT-files (*.mat)'; ... '*.mdl;*.slx','Models (*.slx, *.mdl)'; ... '*.*', 'All Files (*.*)'}, ... 'Select a File');

在这里插入图片描述 对应规则很简单,筛选器一列,备注一列,效果如下: 在这里插入图片描述 4. 指定默认文件名

[file,path] = uigetfile('*.png', 'Select an icon file','icon.png') % 注意,前面需要有窗口名称,后面才是默认文件名

在这里插入图片描述 5. 指定文件路径

[file,path] = uigetfile('*.png',... 'Select an icon file','icon.png')

这个 要注意,如果你要指定筛选器,顺序是 筛选器+标题+路径(可以在路径后面加默认文件名)

[file,path,indx] = uigetfile( ... {'*.m;*.mlx;*.fig;*.mat;*.slx;*.mdl',... 'MATLAB Files (*.m,*.mlx,*.fig,*.mat,*.slx,*.mdl)'; '*.m;*.mlx','Code files (*.m,*.mlx)'; ... '*.fig','Figures (*.fig)'; ... '*.mat','MAT-files (*.mat)'; ... '*.mdl;*.slx','Models (*.slx, *.mdl)'; ... '*.*', 'All Files (*.*)'}, ... 'Select a File', 'C:\Users\75549\Desktop\第二次实验\name.png');

在这里插入图片描述 6. 设置多选 你会发现上面的界面都不能多选的,如果需要多选,还要在参数中加上 ‘MultiSelect’, ‘on’,比如:

[file,path] = uigetfile('*.m',... 'Select One or More Files', ... 'MultiSelect', 'on');


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3