跟我一起学QT_QT标准对话框_文件对话框

标准对话框

QT的标准对话框分为以下几种

  1. 颜色对话框
  2. 文件对话框
  3. 字体对话框
  4. 输入对话框
  5. 消息对话框
  6. 进度对话框
  7. 错误信息对话框
  8. 向导对话框

文件对话框

QT中的文件对话框QFileDialog类提供一个允许用户选择文件或者文件夹的对话框。我们继续在上一篇跟我一起学QT_QT标准对话框_颜色选择框的基础上继续修改

首先我们在UI设计器上再添加一个QpushButton按钮,然后为这个按钮的clicked 信号建立对应的槽函数。
定义槽函数

mydialog.cpp 中添加 #include <QFileDialog>头文件,然后实现槽函数
这里我们先使用QFileDialog 类中的静态函数getOpenFileName这个静态函数的原型如下:

[static] QString 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())

这个函数的大致用途就是它返回用户选择的现有文件。如果用户按下Cancel,它将返回一个空字符串。
下面对这个函数的几个参数简单介绍下
`parent` 如果parent 不等于null 则对话框显示在 parent 的中间
`caption` 对话框的标题
`dir` 对话框初始选择的根目录
`filter` 过滤器使用` ';;'`分割示例如下
"Images (*.png *.xpm *.jpg);;Text files (*.txt);;XML files (*.xml)"

下面我们来实现下代码如下

  1. 在构造函数中用connect连接文件对话框按钮的信号和槽函数
//文件对话框信号槽连接
    connect(ui->fliedlg,&QPushButton::clicked,this,&MyDialog::file_slots_func);
  1. 实现file_slots_func的槽函数
void MyDialog::file_slots_func()
{
    QString fileName = QFileDialog::getOpenFileName(this,"文件选择对话框","D:\\","All File (*.*);;Image (*.png *.jpg *.bmp)");
    qDebug()<<"select color FileName:"<<fileName<<endl;
}

CTRL+b编译 CTRL+r 执行运行结果如图:

执行结果


文件对话框的简单使用就先介绍到这里
posted @ 2018-12-18 15:00  轻风々  阅读(464)  评论(0编辑  收藏  举报