Qt之QFileDialog

来源:互联网 发布:golang redis 连接池 编辑:程序博客网 时间:2024/05/29 14:56

QFileDialog

该类提供了允许用户选择文件或者目录的对话框,并可在用户的文件系统上遍历来选择一个或多个文件或目录。

本文实现的简单对话框为例

QFileDialog* tmp_Dialog =  new QFileDialog(this,tr("Please select the boot loader file"),QString(), tr("boot loader file (*.cpp *.cc *.C *.cxx *.c++)");tmp_Dialog->setFileMode(QFileDialog::ExistingFile);//tmp_Dialog->setFilter( "*.cpp *.cc *.C *.cxx *.c++" );tmp_Dialog->setViewMode(QFileDialog::List);tmp_Dialog->setLabelText(QFileDialog::FileName,tr("My FileName:"));tmp_Dialog->setLabelText( QFileDialog::LookIn,tr("My LookIn:"));tmp_Dialog->setLabelText(QFileDialog::FileType,tr("My FileType:"));tmp_Dialog->setLabelText(QFileDialog::Accept,tr("My Accept"));tmp_Dialog->setLabelText(QFileDialog::Reject,tr("My Reject"));

相关函数:

1、void QFileDialog::setFilter ( const QString & newFilter )

设置文件对话框中使用的过滤器为newFilter。只有其中被括号包含的内容会被作为过滤器。由空格或者分号分隔,也就是说下面这些调用方法都是相同的:

     fd->setFilter( "All C++ files (*.cpp *.cc *.C *.cxx *.c++)" );     fd->setFilter( "*.cpp *.cc *.C *.cxx *.c++" );     fd->setFilter( "All C++ files (*.cpp;*.cc;*.C;*.cxx;*.c++)" );     fd->setFilter( "*.cpp;*.cc;*.C;*.cxx;*.c++" );

2、void setFileMode ( FileMode mode )

其中涉及的枚举变量是QFileDialog::FileMode

Content Value Description QFileDialog::AnyFile 0 文件名,不管该文件是否存在 QFileDialog::ExistingFile 1 一个已存在文件名 QFileDialog::Directory 2 目录名,同时显示文件和目录 QFileDialog::ExistingFiles 3 0个或多个已存在文件名

3、void setViewMode ( ViewMode mode )

其中涉及的枚举变量ViewMode 描述的是文件对话框的视图模式,也就是说关于每个文件都显示什么。

Content Description Value QFileDialog::Detail 显示文件和目录的名称和图标以及更多的信息,比如文件的大小和修改日期。 0 QFileDialog::List 显示文件和目录的名称和图标 1

这里写图片描述

这里写图片描述

4、void QFileDialog::setLabelText ( DialogLabel label, const QString & text )

其中,涉及的枚举变量QFileDialog::DialogLabel

Content Value QFileDialog::LookIn 0 QFileDialog::FileName 1 QFileDialog::FileType 2 QFileDialog::Accept 3 QFileDialog::Reject 4

相关链接:
中文QFileDialog类参考
英文QFileDialog类参考

原创粉丝点击