文件对话框
对应的API
//选择单个文件
[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())
//选择多个文件
[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())
举例:

注意:需要判断选择后的文件路径是否为空,为空则证明没有选择,不需要做任何处理
#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
#include<QFileDialog>
#include<QLineEdit>
#include<QPushButton>
#include<QLabel>
#include<QGridLayout>
class Widget : public QWidget
{
Q_OBJECT
public:
Widget(QWidget *parent = nullptr) : QWidget(parent)
{
resize(500,100);
QGridLayout* grid=new QGridLayout(this);
//选择单个文件对话框
QLabel* lbl=new QLabel("选择单个文件的路径:",this);
QLineEdit* edit=new QLineEdit(this);
QPushButton* btn=new QPushButton("选择单个文件",this);
grid->addWidget(lbl,0,0);
grid->addWidget(edit,0,1,1,2);
grid->addWidget(btn,0,4);
//点击按钮,打开文件对话框选择文件
connect(btn,&QPushButton::clicked,this,[=](){
//参数1:父窗口
//参数2:对话框标题
//参数3:对话框刚打开时的文件路径
//参数3:文件过滤器,比如这里只能选择.cpp .h后缀的文件
//返回值:文件路径
QString file_path=QFileDialog::getOpenFileName(this,"选择文件","./","FILE(*.cpp *.h)");
//需要判断是否为空,为空则证明没有选择
i

最低0.47元/天 解锁文章
2728

被折叠的 条评论
为什么被折叠?



