跟我一起学QT_QT标准对话框_文件对话框
标准对话框
QT的标准对话框分为以下几种
- 颜色对话框
- 文件对话框
- 字体对话框
- 输入对话框
- 消息对话框
- 进度对话框
- 错误信息对话框
- 向导对话框
文件对话框
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)"
下面我们来实现下代码如下
- 在构造函数中用
connect
连接文件对话框按钮的信号和槽函数
//文件对话框信号槽连接
connect(ui->fliedlg,&QPushButton::clicked,this,&MyDialog::file_slots_func);
- 实现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
执行运行结果如图:
文件对话框的简单使用就先介绍到这里