1. 获取单个文件夹路径 QString QFileDialog::getExistingDirectory
这是一个方便的静态函数,它将返回用户选择的现有目录。
[static] QString QFileDialog::getExistingDirectory(QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString(), QFileDialog::Options options = ShowDirsOnly)
QString dir = QFileDialog::getExistingDirectory(this, tr("Open Directory"),
"/home",
QFileDialog::ShowDirsOnly
| QFileDialog::DontResolveSymlinks);
使用示例:
#include <QFileDialog>
void MyWidget::on_pushButton_2_clicked()
{
QString pathName = QFileDialog::getExistingDirectory(this,"获取文件夹对话框","d:");
qDebug()<< "pathName:" << pathName;
}
2.获取单个文件路径 QString QFileDialog::getOpenFileName
这是一个方便的静态函数,返回用户选择的现有文件。如果用户按下Cancel,则返回一个空字符串。
[static] QString QFileDialog::getOpenFileName(QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString(), const QString &filter = QString(), QString *selectedFilter = nullptr, QFileDialog::Options options = Options())
QString fileName = QFileDialog::getOpenFileName(this, tr("Open File"),
"/home",
tr("Images (*.png *.xpm *.jpg)"));
使用示例:
// 文件对话框
#include <QFileDialog>
void MyWidget::on_pushButton_2_clicked()
{
QString fileName = QFileDialog::getOpenFileName(this, tr("文件对话框"),
"D:", tr("图片文件(*png *jpg);;文本文件(*txt)"));
qDebug() << "fileName:" << fileName;
}
3.获取多个文件路径 QStringList QFileDialog::getOpenFileNames
这是一个方便的静态函数,它将返回一个或多个用户选择的现有文件。
[static] QStringList QFileDialog::getOpenFileNames(QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString(), const QString &filter = QString(), QString *selectedFilter = nullptr, QFileDialog::Options options = Options())
QStringList files = QFileDialog::getOpenFileNames(
this,
"Select one or more files to open",
"D:",
"Images (*.png *.xpm *.jpg)");
使用示例:
#include <QFileDialog>
// 文件对话框
void MyWidget::on_pushButton_2_clicked()
{
QStringList fileNames = QFileDialog::getOpenFileNames(this, tr("文件对话框"),
"D:", tr("图片文件(*png *jpg)"));
qDebug()<< "fileNames:" << fileNames;
}