Skip to content

庄朋龙的博客

有志者自有千方万计,无志者只感千难万难。

Menu
  • 首页
  • 生活
  • 创业
  • 编程
  • 运维
  • 视频课程
    • 跨境独立站
    • Shopee跨境电商
    • TEMU跨境电商
  • 资源分享
    • 网站推荐
    • 开源推荐
    • 可商用字体
    • 书籍分享
Menu

Qt自带的文件对话框

Posted on 2016年1月6日2025年3月4日 by 庄朋龙

Qt还给提供了文件选择对话框,在QFileDialog类中  ,它提供了很多静态函数,用于获取用户选择的文件。getOpenFileName()函数在Windows和MacOS X平台上提供的是本地的对话框。

当然也可以使用QFileDialog类,该类提供的始终是Qt自己绘制的对话框,而不都是调用系统资源API。

具体的各个参数的含义可以查看Qt的帮助文档

效果图:

Snip20160106_16

Snip20160106_18

还是老样子,没什么需要理解,都是语法 只有记住就可以了 直接看看代码:

#include "widget.h"
#include "ui_widget.h"
#include <QFileDialog>

Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);
    setWindowTitle("庄朋龙的博客");
    ui->textEdit->setText("<h2>这是Qt自带的文件选择对话框</h2>");
}

Widget::~Widget()
{
    delete ui;
}

void Widget::on_openfile_clicked()   //选择一个文件
{
    QString path = QFileDialog::getOpenFileName(
                this,
                tr("选择一个文件"),
                "/Users/zploo/Desktop",
                tr("Images (*.c *.cpp *.txt)")
                );

    ui->textEdit->append(QString("你选择的文件是:%1").arg(path));
}

void Widget::on_openfiles_clicked()  //选择多个文件
{
    QStringList files = QFileDialog::getOpenFileNames(
                            this,
                            tr("可以选择多个文件"),
                            "/Users/zploo/Desktop",
                            tr("Text (*.c *.cpp *.txt)")
                );

    for(int i = 0; i < files.size(); i++)
            ui->textEdit->append(QString("你选择的文件是:%1").arg(files[i]));

}

需要整个项目完整代码的可以点击这里下载:文件选择对话框

Category: 资源分享

全栈开发者×创业偏执狂

相信代码能改变命运,也相信凌晨四点的服务器警报里有真实的人生。

我的创业项目:
SHOPAGG / SmallShop / DigitShops / 文硕阁

© 2025 庄朋龙的博客