Qt自定义保存文件对话框

Posted

技术标签:

【中文标题】Qt自定义保存文件对话框【英文标题】:Qt customizing save file dialog 【发布时间】:2011-09-15 06:16:13 【问题描述】:

我需要自定义默认的 Qt 保存文件对话框:在其中添加一些选项。例如,在文件类型和保存/关闭按钮之间添加一些带有我自己的值的复选框。

Qt 有什么办法吗?

【问题讨论】:

【参考方案1】:

您可以自定义 Qt 文件对话框,只要您可以使用 Qt 附带的“非原生”Qt 文件对话框; Qt 提供的另一个选项是使用操作系统的本机文件对话框,但如果您这样做,则无法(据我所知)自定义对话框。

Here's 是我作为audio-format-conversion program 的一部分编写的增强文件对话框类的示例。代码有点过时,可能需要进行一些调整才能使用较新版本的 Qt(特别是在 Qt 4.6 和更高版本中,您可能需要在文件对话框对象上调用 setOption(DontUseNativeDialog) ,否则您会得到本机对话框和自定义小部件不会出现在 MacOS/X 下),但如果您想查看,可以在 source archive 中找到它的源代码。

【讨论】:

【参考方案2】:

cfd.h

#include <QFileDialog>
#include <QPushButton>

class cfd : public QFileDialog

public:
    cfd();
;

cfd.cpp

#include "cfd.h"

cfd::cfd()

    ((QWidget*)this->children().at(3))->setFixedSize(200,200);
    (new QPushButton(this))->setFixedSize(300,30);

结果

【讨论】:

以上是关于Qt自定义保存文件对话框的主要内容,如果未能解决你的问题,请参考以下文章

如何在自定义文件浏览对话框Qt C++中实现返回和下一步按钮

python qt(pyqt)的文件打开文件保存文件夹选择对话框

Qt,windows找不到Qt打开文件对话框可以找到的文件

定制的 Windows 保存对话框不再花哨——为啥?

qt 自定义控件怎么使用? 用“Qt4设计师自定义控件”写了个控件,但是不知道怎么使用,急啊!

QT学习之路