选取文件
getOpenFileName可以非常方便地完成单个文件的选取工作,它是QFileDialog的一个静态函数,其原型如下:
QFileDialog::getOpenFileName(
QWidget *parent = Q_NULLPTR,
const QString &caption = QString(),
const QString &dir = QString(),
const QString &filter = QString(),
QString *selectedFilter = Q_NULLPTR,
Options options = Options())
该函数会打开一个模式文件选取对话框,完成选择并确定后返回所选的文件名(包含路径),否则返回一个空字符串。
具体参数如下:
QWidget *parent:父窗口,如果不为nullptr文件选择窗口会显示在父窗口中间
const QString &caption:对话框的标题
const QString &dir:默认的打开的路径,如果包含文件名则会默认选中
const QString &filter:文件类型过滤器,只有匹配的文件能够显示
QString *selectedFilter:是默认选择的过滤器
Options options :是对话框的一些参数设定,比如只显示文件夹等等,它的取值是enum QFileDialog::Option,每个选项可以使用 | 运算组合起来。
具体使用方式如下:
#include <QFileDialog>
QString filename = QFileDialog::getOpenFileName(
this,
tr("Select execute file"),
QDir::currentPath(),
"Image files (*.jpg *.png *.gif);;All files(*.*)");
产生对话框如下: