Qt customizing save file dialog
Asked Answered
D

2

6

I need to customize default Qt save file dialog: add some options in it. For example, adding some checkboxes with my own values in it between file type and save/close buttons.

Have Qt any ways to do it?

Dulaney answered 15/9, 2011 at 6:16 Comment(0)
S
7

You can customize the Qt file dialog as long as you're okay with using the "non-native" Qt file dialog that comes with Qt; the other option Qt provides is to use the OS's native file dialog, but if you do that there is no way (that I'm aware of) to customize the dialog.

Here's an example of an enhanced file dialog class I wrote as part of an audio-format-conversion program:

AudioMove file dialog screenshot

The code is a bit dated and may need a bit of tweaking to work with newer versions of Qt (in particular in Qt 4.6 and higher you'll probably need to call setOption(DontUseNativeDialog) on your file dialog object, otherwise you'll get the native dialog and custom widgets won't appear under MacOS/X), but the source code for it can be found in the GitHub repository if you want to take a look.

Schwartz answered 15/9, 2011 at 6:36 Comment(0)
C
3

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);
}

result

enter image description here

Caraway answered 15/9, 2011 at 6:34 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.