自学QT之标准文件对话框
2015-09-05 00:02
477 查看
新建一个基于对话框的工程,取消界面选项。
dialog.cpp的文件如下:
这里的showFiles槽函数,是自己定义的,并且在头文件中已经声明,头文件如下:
这个程序实现了将文件名再edit中输出:
下面说一下getopenfilename的各个参数:
函数原型:
QString QFileDialog::getOpenFileName (
QWidget * parent = 0,
const QString & caption = QString(),
const QString & dir = QString(),
const QString & filter = QString(),
QString * selectedFilter = 0,
Options options = 0 )
第一个参数parent,用于指定父组件;
第二个参数caption,是对话框的标题;
第三个参数dir,是对话框显示时默认打开的目录,"." 代表程序运行目录,"/" 代表当前盘符的根目录(Windows,Linux下/就是根目录了),也可以是平台相关的,比如"C:\\"等;例如我想打开程序运行目录下的Data文件夹作为默认打开路径,这里应该写成"./Data/",若想有一个默认选中的文件,则在目录后添加文件名即可:"./Data/teaser.graph"
第四个参数filter,是对话框的后缀名过滤器,比如我们使用"Image Files(*.jpg *.png)"就让它只能显示后缀名是jpg或者png的文件。如果需要使用多个过滤器,使用";;"分割,比如"JPEG Files(*.jpg);;PNG Files(*.png)";
第五个参数selectedFilter,是默认选择的过滤器;
第六个参数options,是对话框的一些参数设定,比如只显示文件夹等等,它的取值是enum QFileDialog::Option,每个选项可以使用 | 运算组合起来。
如果要选择多个文件的话,你需要将getOpenFileName改成getOpenFileNames。
dialog.cpp的文件如下:
#include "dialog.h" #include <QFileDialog> Dialog::Dialog(QWidget *parent) : QDialog(parent) { filebtn =new QPushButton("标准文件打开对话框"); fileLineEdit =new QLineEdit(); mainLayout=new QGridLayout(this); mainLayout->addWidget(filebtn,0,0); mainLayout->addWidget(fileLineEdit,0,1); connect(filebtn,SIGNAL(clicked()),this,SLOT(showFiles())); } void Dialog::showFiles() { QString s=QFileDialog::getOpenFileName(this,"选择文件","/","JPEG Files(*.jpg)"); fileLineEdit->setText(s); } Dialog::~Dialog() { }
这里的showFiles槽函数,是自己定义的,并且在头文件中已经声明,头文件如下:
#ifndef DIALOG_H #define DIALOG_H #include <QDialog> #include <QPushButton> #include <QLineEdit> #include <QGridLayout> class Dialog : public QDialog { Q_OBJECT public: Dialog(QWidget *parent = 0); ~Dialog(); private: QPushButton *filebtn; QLineEdit *fileLineEdit; QGridLayout *mainLayout; public slots: void showFiles(); }; #endif // DIALOG_H
这个程序实现了将文件名再edit中输出:
下面说一下getopenfilename的各个参数:
函数原型:
QString QFileDialog::getOpenFileName (
QWidget * parent = 0,
const QString & caption = QString(),
const QString & dir = QString(),
const QString & filter = QString(),
QString * selectedFilter = 0,
Options options = 0 )
第一个参数parent,用于指定父组件;
第二个参数caption,是对话框的标题;
第三个参数dir,是对话框显示时默认打开的目录,"." 代表程序运行目录,"/" 代表当前盘符的根目录(Windows,Linux下/就是根目录了),也可以是平台相关的,比如"C:\\"等;例如我想打开程序运行目录下的Data文件夹作为默认打开路径,这里应该写成"./Data/",若想有一个默认选中的文件,则在目录后添加文件名即可:"./Data/teaser.graph"
第四个参数filter,是对话框的后缀名过滤器,比如我们使用"Image Files(*.jpg *.png)"就让它只能显示后缀名是jpg或者png的文件。如果需要使用多个过滤器,使用";;"分割,比如"JPEG Files(*.jpg);;PNG Files(*.png)";
第五个参数selectedFilter,是默认选择的过滤器;
第六个参数options,是对话框的一些参数设定,比如只显示文件夹等等,它的取值是enum QFileDialog::Option,每个选项可以使用 | 运算组合起来。
如果要选择多个文件的话,你需要将getOpenFileName改成getOpenFileNames。
相关文章推荐
- 接primsense 用rqt订阅发现rgb图和depth图巨卡
- 自学QT之堆栈窗口
- QT,QT SDK, QT Creator 区别
- QT工程pro文件TEMPLATE变量说明
- QT跨目录编译及多工程集成
- Ubuntu12.04下安装Qt4.8.1
- Qt信号与槽
- window7配置Qt
- 自学QT之停靠窗口
- 源码安装Qt 5.4.2
- QTableView与QStandardItemModel基本使用方法
- 在QThread中使用QTimer
- QThread的一种用法
- 自学QT之实现窗口分割QSplitter的使用
- 自学QT之判断输入内容实现按钮可用或者不可用
- 记录Qt的一个诡异Bug
- [转载]Qt之中文显示(QMessageBox、QLineEdit右键菜单等)
- 如何在Qt中使用自定义数据类型
- [转载]Qt之自定义界面(二)添加最小化、关闭按钮、添加背景
- Qt 中如何捕获窗口停用和激活的消息