QFileDialog类允许用户遍历文件系统以选择一个或多个文件或目录。
创建QFileDialog最简单的方法是使用静态函数。
fileName = QFileDialog::getOpenFileName(this,
tr("Open Image"), "/home/jana", tr("Image Files (*.png *.jpg *.bmp)"));
在上面的示例中,使用静态函数创建了一个模态QFileDialog。该对话框最初显示“/home/jana”目录的内容,并显示与字符串“Image files(.png.jpg*.bmp)”中给出的模式匹配的文件。“文件”对话框的父级设置为“打开图像”,窗口标题设置为“打开图像”。
如果要使用多个筛选器,请用两个分号分隔每个筛选器。例如:
"Images (*.png *.xpm *.jpg);;Text files (*.txt);;XML files (*.xml)"
您可以创建自己的QFileDialog,而无需使用静态函数。通过调用setFileMode(),可以指定用户必须在对话框中选择的内容
QFileDialog dialog(this);
dialog.setFileMode(QFileDialog::AnyFile);
在上面的示例中,文件对话框的模式设置为AnyFile,这意味着用户可以选择任何文件,甚至可以指定一个不存在的文件。此模式对于创建“另存为”文件对话框很有用。如果用户必须选择现有文件,请使用ExistingFile;如果只能选择目录,请使用目录。有