QtBase  v6.3.1
Public Types | Public Slots | Signals | Public Member Functions | Static Public Member Functions | Protected Member Functions | Properties | List of all members
QFileDialog Class Reference

The QFileDialog class provides a dialog that allow users to select files or directories.\inmodule QtWidgets. More...

#include <qfiledialog.h>

Inheritance diagram for QFileDialog:
Inheritance graph
[legend]
Collaboration diagram for QFileDialog:
Collaboration graph
[legend]

Public Types

enum  ViewMode { Detail , List }
 
enum  FileMode { AnyFile , ExistingFile , Directory , ExistingFiles }
 
enum  AcceptMode { AcceptOpen , AcceptSave }
 
enum  DialogLabel {
  LookIn , FileName , FileType , Accept ,
  Reject
}
 
enum  Option {
  ShowDirsOnly = 0x00000001 , DontResolveSymlinks = 0x00000002 , DontConfirmOverwrite = 0x00000004 , DontUseNativeDialog = 0x00000008 ,
  ReadOnly = 0x00000010 , HideNameFilterDetails = 0x00000020 , DontUseCustomDirectoryIcons = 0x00000040
}
 
- Public Types inherited from QDialog
enum  DialogCode { Rejected , Accepted }
 
- Public Types inherited from QWidget
enum  RenderFlag { DrawWindowBackground = 0x1 , DrawChildren = 0x2 , IgnoreMask = 0x4 }
 
- Public Types inherited from QPaintDevice
enum  PaintDeviceMetric {
  PdmWidth = 1 , PdmHeight , PdmWidthMM , PdmHeightMM ,
  PdmNumColors , PdmDepth , PdmDpiX , PdmDpiY ,
  PdmPhysicalDpiX , PdmPhysicalDpiY , PdmDevicePixelRatio , PdmDevicePixelRatioScaled
}
 

Public Slots

virtual void open ()
 
- Public Slots inherited from QDialog
virtual void open ()
 
virtual int exec ()
 
virtual void reject ()
 
- Public Slots inherited from QWidget
void setEnabled (bool)
 
void setDisabled (bool)
 
void setWindowModified (bool)
 
void setWindowTitle (const QString &)
 
void setStyleSheet (const QString &styleSheet)
 
void setFocus ()
 
void update ()
 
void repaint ()
 
void setHidden (bool hidden)
 
void show ()
 
void hide ()
 
void showMinimized ()
 
void showMaximized ()
 
void showFullScreen ()
 
void showNormal ()
 
bool close ()
 
void raise ()
 
void lower ()
 
- Public Slots inherited from QObject
void deleteLater ()
 

Signals

void fileSelected (const QString &file)
 
void filesSelected (const QStringList &files)
 
void currentChanged (const QString &path)
 
void directoryEntered (const QString &directory)
 
void urlSelected (const QUrl &url)
 
void urlsSelected (const QList< QUrl > &urls)
 
void currentUrlChanged (const QUrl &url)
 
void directoryUrlEntered (const QUrl &directory)
 
void filterSelected (const QString &filter)
 
- Signals inherited from QDialog
void finished (int result)
 
void accepted ()
 
void rejected ()
 
- Signals inherited from QWidget
void windowTitleChanged (const QString &title)
 
void windowIconChanged (const QIcon &icon)
 
void windowIconTextChanged (const QString &iconText)
 
void customContextMenuRequested (const QPoint &pos)
 
- Signals inherited from QObject
void destroyed (QObject *=nullptr)
 
void objectNameChanged (const QString &objectName, QPrivateSignal)
 

Public Member Functions

 QFileDialog (QWidget *parent, Qt::WindowFlags f)
 
 QFileDialog (QWidget *parent=nullptr, const QString &caption=QString(), const QString &directory=QString(), const QString &filter=QString())
 
 ~QFileDialog ()
 
void setDirectory (const QString &directory)
 
void setDirectory (const QDir &directory)
 
QDir directory () const
 
void setDirectoryUrl (const QUrl &directory)
 
QUrl directoryUrl () const
 
void selectFile (const QString &filename)
 
QStringList selectedFiles () const
 
void selectUrl (const QUrl &url)
 
QList< QUrlselectedUrls () const
 
void setNameFilter (const QString &filter)
 
void setNameFilters (const QStringList &filters)
 
QStringList nameFilters () const
 
void selectNameFilter (const QString &filter)
 
QString selectedMimeTypeFilter () const
 
QString selectedNameFilter () const
 
QDir::Filters filter () const
 
void setFilter (QDir::Filters filters)
 
void setViewMode (ViewMode mode)
 
ViewMode viewMode () const
 
void setFileMode (FileMode mode)
 
FileMode fileMode () const
 
void setAcceptMode (AcceptMode mode)
 
AcceptMode acceptMode () const
 
void setSidebarUrls (const QList< QUrl > &urls)
 
QList< QUrlsidebarUrls () const
 
QByteArray saveState () const
 
bool restoreState (const QByteArray &state)
 
void setDefaultSuffix (const QString &suffix)
 
QString defaultSuffix () const
 
void setHistory (const QStringList &paths)
 
QStringList history () const
 
void setItemDelegate (QAbstractItemDelegate *delegate)
 
QAbstractItemDelegateitemDelegate () const
 
void setIconProvider (QAbstractFileIconProvider *provider)
 
QAbstractFileIconProvidericonProvider () const
 
void setLabelText (DialogLabel label, const QString &text)
 
QString labelText (DialogLabel label) const
 
void setSupportedSchemes (const QStringList &schemes)
 
QStringList supportedSchemes () const
 
void setOption (Option option, bool on=true)
 
bool testOption (Option option) const
 
void setOptions (Options options)
 
Options options () const
 
void open (QObject *receiver, const char *member)
 
void setVisible (bool visible) override
 
- Public Member Functions inherited from QDialog
 QDialog (QWidget *parent=nullptr, Qt::WindowFlags f=Qt::WindowFlags())
 
 ~QDialog ()
 
int result () const
 
QSize sizeHint () const override
 
QSize minimumSizeHint () const override
 
void setSizeGripEnabled (bool)
 
bool isSizeGripEnabled () const
 
void setModal (bool modal)
 
void setResult (int r)
 
- Public Member Functions inherited from QWidget
 QWidget (QWidget *parent=nullptr, Qt::WindowFlags f=Qt::WindowFlags())
 
 ~QWidget ()
 
int devType () const override
 
WId winId () const
 
void createWinId ()
 
WId internalWinId () const
 
WId effectiveWinId () const
 
QStylestyle () const
 
void setStyle (QStyle *)
 
bool isWindow () const
 
bool isModal () const
 
Qt::WindowModality windowModality () const
 
void setWindowModality (Qt::WindowModality windowModality)
 
bool isEnabled () const
 
bool isEnabledTo (const QWidget *) const
 
QRect frameGeometry () const
 
const QRectgeometry () const
 
QRect normalGeometry () const
 
int x () const
 
int y () const
 
QPoint pos () const
 
QSize frameSize () const
 
QSize size () const
 
int width () const
 
int height () const
 
QRect rect () const
 
QRect childrenRect () const
 
QRegion childrenRegion () const
 
QSize minimumSize () const
 
QSize maximumSize () const
 
int minimumWidth () const
 
int minimumHeight () const
 
int maximumWidth () const
 
int maximumHeight () const
 
void setMinimumSize (const QSize &)
 
void setMinimumSize (int minw, int minh)
 
void setMaximumSize (const QSize &)
 
void setMaximumSize (int maxw, int maxh)
 
void setMinimumWidth (int minw)
 
void setMinimumHeight (int minh)
 
void setMaximumWidth (int maxw)
 
void setMaximumHeight (int maxh)
 
QSize sizeIncrement () const
 
void setSizeIncrement (const QSize &)
 
void setSizeIncrement (int w, int h)
 
QSize baseSize () const
 
void setBaseSize (const QSize &)
 
void setBaseSize (int basew, int baseh)
 
void setFixedSize (const QSize &)
 
void setFixedSize (int w, int h)
 
void setFixedWidth (int w)
 
void setFixedHeight (int h)
 
QPointF mapToGlobal (const QPointF &) const
 
QPoint mapToGlobal (const QPoint &) const
 
QPointF mapFromGlobal (const QPointF &) const
 
QPoint mapFromGlobal (const QPoint &) const
 
QPointF mapToParent (const QPointF &) const
 
QPoint mapToParent (const QPoint &) const
 
QPointF mapFromParent (const QPointF &) const
 
QPoint mapFromParent (const QPoint &) const
 
QPointF mapTo (const QWidget *, const QPointF &) const
 
QPoint mapTo (const QWidget *, const QPoint &) const
 
QPointF mapFrom (const QWidget *, const QPointF &) const
 
QPoint mapFrom (const QWidget *, const QPoint &) const
 
QWidgetwindow () const
 
QWidgetnativeParentWidget () const
 
QWidgettopLevelWidget () const
 
const QPalettepalette () const
 
void setPalette (const QPalette &)
 
void setBackgroundRole (QPalette::ColorRole)
 
QPalette::ColorRole backgroundRole () const
 
void setForegroundRole (QPalette::ColorRole)
 
QPalette::ColorRole foregroundRole () const
 
const QFontfont () const
 
void setFont (const QFont &)
 
QFontMetrics fontMetrics () const
 
QFontInfo fontInfo () const
 
QCursor cursor () const
 
void setCursor (const QCursor &)
 
void unsetCursor ()
 
void setMouseTracking (bool enable)
 
bool hasMouseTracking () const
 
bool underMouse () const
 
void setTabletTracking (bool enable)
 
bool hasTabletTracking () const
 
void setMask (const QBitmap &)
 
void setMask (const QRegion &)
 
QRegion mask () const
 
void clearMask ()
 
void render (QPaintDevice *target, const QPoint &targetOffset=QPoint(), const QRegion &sourceRegion=QRegion(), RenderFlags renderFlags=RenderFlags(DrawWindowBackground|DrawChildren))
 
void render (QPainter *painter, const QPoint &targetOffset=QPoint(), const QRegion &sourceRegion=QRegion(), RenderFlags renderFlags=RenderFlags(DrawWindowBackground|DrawChildren))
 
Q_INVOKABLE QPixmap grab (const QRect &rectangle=QRect(QPoint(0, 0), QSize(-1, -1)))
 
void grabGesture (Qt::GestureType type, Qt::GestureFlags flags=Qt::GestureFlags())
 
void ungrabGesture (Qt::GestureType type)
 
QString styleSheet () const
 
QString windowTitle () const
 
void setWindowIcon (const QIcon &icon)
 
QIcon windowIcon () const
 
void setWindowIconText (const QString &)
 
QString windowIconText () const
 
void setWindowRole (const QString &)
 
QString windowRole () const
 
void setWindowFilePath (const QString &filePath)
 
QString windowFilePath () const
 
void setWindowOpacity (qreal level)
 
qreal windowOpacity () const
 
bool isWindowModified () const
 
QString accessibleName () const
 
void setAccessibleName (const QString &name)
 
QString accessibleDescription () const
 
void setAccessibleDescription (const QString &description)
 
void setLayoutDirection (Qt::LayoutDirection direction)
 
Qt::LayoutDirection layoutDirection () const
 
void unsetLayoutDirection ()
 
void setLocale (const QLocale &locale)
 
QLocale locale () const
 
void unsetLocale ()
 
bool isRightToLeft () const
 
bool isLeftToRight () const
 
bool isActiveWindow () const
 
void activateWindow ()
 
void clearFocus ()
 
void setFocus (Qt::FocusReason reason)
 
Qt::FocusPolicy focusPolicy () const
 
void setFocusPolicy (Qt::FocusPolicy policy)
 
bool hasFocus () const
 
void setFocusProxy (QWidget *)
 
QWidgetfocusProxy () const
 
Qt::ContextMenuPolicy contextMenuPolicy () const
 
void setContextMenuPolicy (Qt::ContextMenuPolicy policy)
 
void grabMouse ()
 
void grabMouse (const QCursor &)
 
void releaseMouse ()
 
void grabKeyboard ()
 
void releaseKeyboard ()
 
int grabShortcut (const QKeySequence &key, Qt::ShortcutContext context=Qt::WindowShortcut)
 
void releaseShortcut (int id)
 
void setShortcutEnabled (int id, bool enable=true)
 
void setShortcutAutoRepeat (int id, bool enable=true)
 
bool updatesEnabled () const
 
void setUpdatesEnabled (bool enable)
 
void update (int x, int y, int w, int h)
 
void update (const QRect &)
 
void update (const QRegion &)
 
void repaint (int x, int y, int w, int h)
 
void repaint (const QRect &)
 
void repaint (const QRegion &)
 
void stackUnder (QWidget *)
 
void move (int x, int y)
 
void move (const QPoint &)
 
void resize (int w, int h)
 
void resize (const QSize &)
 
void setGeometry (int x, int y, int w, int h)
 
void setGeometry (const QRect &)
 
QByteArray saveGeometry () const
 
bool restoreGeometry (const QByteArray &geometry)
 
void adjustSize ()
 
bool isVisible () const
 
bool isVisibleTo (const QWidget *) const
 
bool isHidden () const
 
bool isMinimized () const
 
bool isMaximized () const
 
bool isFullScreen () const
 
Qt::WindowStates windowState () const
 
void setWindowState (Qt::WindowStates state)
 
void overrideWindowState (Qt::WindowStates state)
 
QSizePolicy sizePolicy () const
 
void setSizePolicy (QSizePolicy)
 
void setSizePolicy (QSizePolicy::Policy horizontal, QSizePolicy::Policy vertical)
 
virtual int heightForWidth (int) const
 
virtual bool hasHeightForWidth () const
 
QRegion visibleRegion () const
 
void setContentsMargins (int left, int top, int right, int bottom)
 
void setContentsMargins (const QMargins &margins)
 The setContentsMargins function sets the margins around the widget's contents. More...
 
QMargins contentsMargins () const
 The contentsMargins function returns the widget's contents margins. More...
 
QRect contentsRect () const
 
QLayoutlayout () const
 
void setLayout (QLayout *)
 
void updateGeometry ()
 
void setParent (QWidget *parent)
 
void setParent (QWidget *parent, Qt::WindowFlags f)
 
void scroll (int dx, int dy)
 
void scroll (int dx, int dy, const QRect &)
 
QWidgetfocusWidget () const
 
QWidgetnextInFocusChain () const
 
QWidgetpreviousInFocusChain () const
 The previousInFocusChain function returns the previous widget in this widget's focus chain. More...
 
bool acceptDrops () const
 
void setAcceptDrops (bool on)
 
void addAction (QAction *action)
 
void addActions (const QList< QAction * > &actions)
 
void insertActions (QAction *before, const QList< QAction * > &actions)
 
void insertAction (QAction *before, QAction *action)
 
void removeAction (QAction *action)
 
QList< QAction * > actions () const
 
QActionaddAction (const QString &text)
 
QActionaddAction (const QIcon &icon, const QString &text)
 
QActionaddAction (const QString &text, const QObject *receiver, const char *member, Qt::ConnectionType type=Qt::AutoConnection)
 
QActionaddAction (const QIcon &icon, const QString &text, const QObject *receiver, const char *member, Qt::ConnectionType type=Qt::AutoConnection)
 
template<typename... Args, typename = compatible_action_slot_args<Args...>>
QActionaddAction (const QString &text, Args &&...args)
 
template<typename... Args, typename = compatible_action_slot_args<Args...>>
QActionaddAction (const QIcon &icon, const QString &text, Args &&...args)
 
QWidgetparentWidget () const
 
void setWindowFlags (Qt::WindowFlags type)
 
Qt::WindowFlags windowFlags () const
 
void setWindowFlag (Qt::WindowType, bool on=true)
 
void overrideWindowFlags (Qt::WindowFlags type)
 
Qt::WindowType windowType () const
 
QWidgetchildAt (int x, int y) const
 
QWidgetchildAt (const QPoint &p) const
 
void setAttribute (Qt::WidgetAttribute, bool on=true)
 
bool testAttribute (Qt::WidgetAttribute) const
 
QPaintEnginepaintEngine () const override
 
void ensurePolished () const
 
bool isAncestorOf (const QWidget *child) const
 
bool autoFillBackground () const
 
void setAutoFillBackground (bool enabled)
 
QBackingStorebackingStore () const
 
QWindowwindowHandle () const
 
QScreenscreen () const
 
void setScreen (QScreen *)
 
virtual QVariant inputMethodQuery (Qt::InputMethodQuery) const
 
Qt::InputMethodHints inputMethodHints () const
 
void setInputMethodHints (Qt::InputMethodHints hints)
 
- Public Member Functions inherited from QObject
Q_INVOKABLE QObject (QObject *parent=nullptr)
 
virtual ~QObject ()
 
QString objectName () const
 
void setObjectName (const QString &name)
 
QBindable< QStringbindableObjectName ()
 
bool isWidgetType () const
 
bool isWindowType () const
 
bool signalsBlocked () const noexcept
 
bool blockSignals (bool b) noexcept
 
QThreadthread () const
 
void moveToThread (QThread *thread)
 
int startTimer (int interval, Qt::TimerType timerType=Qt::CoarseTimer)
 
void killTimer (int id)
 
template<typename T >
T findChild (const QString &aName=QString(), Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 
template<typename T >
QList< TfindChildren (const QString &aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 
template<typename T >
QList< TfindChildren (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 
const QObjectListchildren () const
 
void setParent (QObject *parent)
 
void installEventFilter (QObject *filterObj)
 
void removeEventFilter (QObject *obj)
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const
 
bool disconnect (const char *signal=nullptr, const QObject *receiver=nullptr, const char *member=nullptr) const
 
bool disconnect (const QObject *receiver, const char *member=nullptr) const
 
void dumpObjectTree () const
 
void dumpObjectInfo () const
 
bool setProperty (const char *name, const QVariant &value)
 
QVariant property (const char *name) const
 
QList< QByteArraydynamicPropertyNames () const
 
QBindingStoragebindingStorage ()
 
const QBindingStoragebindingStorage () const
 
QObjectparent () const
 
bool inherits (const char *classname) const
 
- Public Member Functions inherited from QPaintDevice
virtual ~QPaintDevice ()
 
bool paintingActive () const
 
int width () const
 
int height () const
 
int widthMM () const
 
int heightMM () const
 
int logicalDpiX () const
 
int logicalDpiY () const
 
int physicalDpiX () const
 
int physicalDpiY () const
 
qreal devicePixelRatio () const
 
qreal devicePixelRatioF () const
 
int colorCount () const
 
int depth () const
 

Static Public Member Functions

static QString getOpenFileName (QWidget *parent=nullptr, const QString &caption=QString(), const QString &dir=QString(), const QString &filter=QString(), QString *selectedFilter=nullptr, Options options=Options())
 
static QUrl getOpenFileUrl (QWidget *parent=nullptr, const QString &caption=QString(), const QUrl &dir=QUrl(), const QString &filter=QString(), QString *selectedFilter=nullptr, Options options=Options(), const QStringList &supportedSchemes=QStringList())
 
static QString getSaveFileName (QWidget *parent=nullptr, const QString &caption=QString(), const QString &dir=QString(), const QString &filter=QString(), QString *selectedFilter=nullptr, Options options=Options())
 
static QUrl getSaveFileUrl (QWidget *parent=nullptr, const QString &caption=QString(), const QUrl &dir=QUrl(), const QString &filter=QString(), QString *selectedFilter=nullptr, Options options=Options(), const QStringList &supportedSchemes=QStringList())
 
static QString getExistingDirectory (QWidget *parent=nullptr, const QString &caption=QString(), const QString &dir=QString(), Options options=ShowDirsOnly)
 
static QUrl getExistingDirectoryUrl (QWidget *parent=nullptr, const QString &caption=QString(), const QUrl &dir=QUrl(), Options options=ShowDirsOnly, const QStringList &supportedSchemes=QStringList())
 
static QStringList getOpenFileNames (QWidget *parent=nullptr, const QString &caption=QString(), const QString &dir=QString(), const QString &filter=QString(), QString *selectedFilter=nullptr, Options options=Options())
 
static QList< QUrlgetOpenFileUrls (QWidget *parent=nullptr, const QString &caption=QString(), const QUrl &dir=QUrl(), const QString &filter=QString(), QString *selectedFilter=nullptr, Options options=Options(), const QStringList &supportedSchemes=QStringList())
 
static void getOpenFileContent (const QString &nameFilter, const std::function< void(const QString &, const QByteArray &)> &fileContentsReady)
 
static void saveFileContent (const QByteArray &fileContent, const QString &fileNameHint=QString())
 
- Static Public Member Functions inherited from QWidget
static void setTabOrder (QWidget *, QWidget *)
 
static QWidgetmouseGrabber ()
 
static QWidgetkeyboardGrabber ()
 
static QWidgetfind (WId)
 
static QWidgetcreateWindowContainer (QWindow *window, QWidget *parent=nullptr, Qt::WindowFlags flags=Qt::WindowFlags())
 
- Static Public Member Functions inherited from QObject
static QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
 
static QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection)
 
template<typename Func1 , typename Func2 >
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiver, Func2 slot, Qt::ConnectionType type=Qt::AutoConnection)
 
static QMetaObject::Connection ::type connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, Func2 slot)
 
static QMetaObject::Connection ::type connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const QObject *context, Func2 slot, Qt::ConnectionType type=Qt::AutoConnection)
 
template<typename Func1 , typename Func2 >
static std::enable_if< QtPrivate::FunctionPointer< Func2 >::ArgumentCount==-1 &&!std::is_convertible_v< Func2, const char * >, QMetaObject::Connection >::type connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, Func2 slot)
 
template<typename Func1 , typename Func2 >
static std::enable_if< QtPrivate::FunctionPointer< Func2 >::ArgumentCount==-1 &&!std::is_convertible_v< Func2, const char * >, QMetaObject::Connection >::type connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const QObject *context, Func2 slot, Qt::ConnectionType type=Qt::AutoConnection)
 
static bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member)
 
static bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member)
 
static bool disconnect (const QMetaObject::Connection &)
 
template<typename Func1 , typename Func2 >
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiver, Func2 slot)
 
template<typename Func1 >
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const QObject *receiver, void **zero)
 
- Static Public Member Functions inherited from QPaintDevice
static qreal devicePixelRatioFScale ()
 

Protected Member Functions

 QFileDialog (const QFileDialogArgs &args)
 
void done (int result) override
 
void accept () override
 
void changeEvent (QEvent *e) override
 
- Protected Member Functions inherited from QDialog
 QDialog (QDialogPrivate &, QWidget *parent, Qt::WindowFlags f=Qt::WindowFlags())
 
void keyPressEvent (QKeyEvent *) override
 
void closeEvent (QCloseEvent *) override
 
void showEvent (QShowEvent *) override
 
void resizeEvent (QResizeEvent *) override
 
void contextMenuEvent (QContextMenuEvent *) override
 
bool eventFilter (QObject *, QEvent *) override
 
void adjustPosition (QWidget *)
 
- Protected Member Functions inherited from QWidget
bool event (QEvent *event) override
 
virtual void mousePressEvent (QMouseEvent *event)
 
virtual void mouseReleaseEvent (QMouseEvent *event)
 
virtual void mouseDoubleClickEvent (QMouseEvent *event)
 
virtual void mouseMoveEvent (QMouseEvent *event)
 
virtual void keyReleaseEvent (QKeyEvent *event)
 
virtual void focusInEvent (QFocusEvent *event)
 
virtual void focusOutEvent (QFocusEvent *event)
 
virtual void enterEvent (QEnterEvent *event)
 
virtual void leaveEvent (QEvent *event)
 
virtual void paintEvent (QPaintEvent *event)
 
virtual void moveEvent (QMoveEvent *event)
 
virtual void actionEvent (QActionEvent *event)
 
virtual void hideEvent (QHideEvent *event)
 
virtual bool nativeEvent (const QByteArray &eventType, void *message, qintptr *result)
 
int metric (PaintDeviceMetric) const override
 
void initPainter (QPainter *painter) const override
 
QPaintDeviceredirected (QPoint *offset) const override
 
QPaintersharedPainter () const override
 
virtual void inputMethodEvent (QInputMethodEvent *)
 
void create (WId=0, bool initializeWindow=true, bool destroyOldWindow=true)
 
void destroy (bool destroyWindow=true, bool destroySubWindows=true)
 
virtual bool focusNextPrevChild (bool next)
 
bool focusNextChild ()
 
bool focusPreviousChild ()
 
 QWidget (QWidgetPrivate &d, QWidget *parent, Qt::WindowFlags f)
 
- Protected Member Functions inherited from QObject
QObjectsender () const
 
int senderSignalIndex () const
 
int receivers (const char *signal) const
 
bool isSignalConnected (const QMetaMethod &signal) const
 
virtual void timerEvent (QTimerEvent *event)
 
virtual void childEvent (QChildEvent *event)
 
virtual void customEvent (QEvent *event)
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
 QObject (QObjectPrivate &dd, QObject *parent=nullptr)
 
- Protected Member Functions inherited from QPaintDevice
 QPaintDevice () noexcept
 

Properties

ViewMode viewMode
 the way files and directories are displayed in the dialog More...
 
FileMode fileMode
 the file mode of the dialog More...
 
AcceptMode acceptMode
 the accept mode of the dialog More...
 
QString defaultSuffix
 suffix added to the filename if no other suffix was specified More...
 
Options options
 the various options that affect the look and feel of the dialog More...
 
QStringList supportedSchemes
 the URL schemes that the file dialog should allow navigating to. More...
 
- Properties inherited from QDialog
bool sizeGripEnabled
 whether the size grip is enabled More...
 
bool modal
 whether show() should pop up the dialog as modal or modeless More...
 
- Properties inherited from QWidget
bool modal
 whether the widget is a modal widget More...
 
Qt::WindowModality windowModality
 which windows are blocked by the modal widget More...
 
bool enabled
 whether the widget is enabled More...
 
QRect geometry
 the geometry of the widget relative to its parent and excluding the window frame More...
 
QRect frameGeometry
 geometry of the widget relative to its parent including any window frame More...
 
QRect normalGeometry
 the geometry of the widget as it will appear when shown as a normal (not maximized or full screen) top-level widget More...
 
int x
 the x coordinate of the widget relative to its parent including any window frame More...
 
int y
 the y coordinate of the widget relative to its parent and including any window frame More...
 
QPoint pos
 the position of the widget within its parent widget More...
 
QSize frameSize
 the size of the widget including any window frame More...
 
QSize size
 the size of the widget excluding any window frame More...
 
int width
 the width of the widget excluding any window frame More...
 
int height
 the height of the widget excluding any window frame More...
 
QRect rect
 the internal geometry of the widget excluding any window frame More...
 
QRect childrenRect
 the bounding rectangle of the widget's children More...
 
QRegion childrenRegion
 the combined region occupied by the widget's children More...
 
QSizePolicy sizePolicy
 the default layout behavior of the widget More...
 
QSize minimumSize
 the widget's minimum size More...
 
QSize maximumSize
 the widget's maximum size in pixels More...
 
int minimumWidth
 the widget's minimum width in pixels More...
 
int minimumHeight
 the widget's minimum height in pixels More...
 
int maximumWidth
 the widget's maximum width in pixels More...
 
int maximumHeight
 the widget's maximum height in pixels More...
 
QSize sizeIncrement
 the size increment of the widget More...
 
QSize baseSize
 the base size of the widget More...
 
QPalette palette
 the widget's palette More...
 
QFont font
 the font currently set for the widget More...
 
QCursor cursor
 the cursor shape for this widget More...
 
bool mouseTracking
 whether mouse tracking is enabled for the widget More...
 
bool tabletTracking
 whether tablet tracking is enabled for the widget More...
 
bool isActiveWindow
 whether this widget's window is the active window More...
 
Qt::FocusPolicy focusPolicy
 the way the widget accepts keyboard focus More...
 
bool focus
 whether this widget (or its focus proxy) has the keyboard input focus More...
 
Qt::ContextMenuPolicy contextMenuPolicy
 how the widget shows a context menu More...
 
bool updatesEnabled
 whether updates are enabled More...
 
bool visible
 whether the widget is visible More...
 
bool minimized
 whether this widget is minimized (iconified) More...
 
bool maximized
 whether this widget is maximized More...
 
bool fullScreen
 whether the widget is shown in full screen mode More...
 
QSize sizeHint
 the recommended size for the widget More...
 
QSize minimumSizeHint
 the recommended minimum size for the widget More...
 
bool acceptDrops
 whether drop events are enabled for this widget More...
 
QString windowTitle
 the window title (caption) More...
 
QIcon windowIcon
 the widget's icon More...
 
QString windowIconText
 the text to be displayed on the icon of a minimized window More...
 
double windowOpacity
 The level of opacity for the window. More...
 
bool windowModified
 whether the document shown in the window has unsaved changes More...
 
QString accessibleName
 the widget's name as seen by assistive technologies More...
 
QString accessibleDescription
 the widget's description as seen by assistive technologies More...
 
Qt::LayoutDirection layoutDirection
 the layout direction for this widget. More...
 
bool autoFillBackground
 whether the widget background is filled automatically More...
 
QString styleSheet
 the widget's style sheet More...
 
QLocale locale
 the widget's locale More...
 
QString windowFilePath
 the file path associated with a widget More...
 
Qt::InputMethodHints inputMethodHints
 What input method specific hints the widget has. More...
 
- Properties inherited from QObject
QString objectName
 the name of this object More...
 

Additional Inherited Members

- Protected Slots inherited from QWidget
void updateMicroFocus (Qt::InputMethodQuery query=Qt::ImQueryAll)
 
- Protected Attributes inherited from QObject
QScopedPointer< QObjectDatad_ptr
 
- Protected Attributes inherited from QPaintDevice
ushort painters
 

Detailed Description

The QFileDialog class provides a dialog that allow users to select files or directories.

\inmodule QtWidgets.

The QFileDialog class enables a user to traverse the file system in order to select one or many files or a directory.

The easiest way to create a QFileDialog is to use the static functions.

In the above example, a modal QFileDialog is created using a static function. The dialog initially displays the contents of the "/home/jana" directory, and displays files matching the patterns given in the string "Image Files (*.png *.jpg *.bmp)". The parent of the file dialog is set to this, and the window title is set to "Open Image".

If you want to use multiple filters, separate each one with two semicolons. For example:

You can create your own QFileDialog without using the static functions. By calling setFileMode(), you can specify what the user must select in the dialog:

In the above example, the mode of the file dialog is set to AnyFile, meaning that the user can select any file, or even specify a file that doesn't exist. This mode is useful for creating a "Save As" file dialog. Use ExistingFile if the user must select an existing file, or \l Directory if only a directory may be selected. See the \l QFileDialog::FileMode enum for the complete list of modes.

The fileMode property contains the mode of operation for the dialog; this indicates what types of objects the user is expected to select. Use setNameFilter() to set the dialog's file filter. For example:

In the above example, the filter is set to {"Images (*.png *.xpm *.jpg)"}, this means that only files with the extension png, xpm, or jpg will be shown in the QFileDialog. You can apply several filters by using setNameFilters(). Use selectNameFilter() to select one of the filters you've given as the file dialog's default filter.

The file dialog has two view modes: \l{QFileDialog::}{List} and \l{QFileDialog::}{Detail}. \l{QFileDialog::}{List} presents the contents of the current directory as a list of file and directory names. \l{QFileDialog::}{Detail} also displays a list of file and directory names, but provides additional information alongside each name, such as the file size and modification date. Set the mode with setViewMode():

The last important function you will need to use when creating your own file dialog is selectedFiles().

In the above example, a modal file dialog is created and shown. If the user clicked OK, the file they selected is put in fileName.

The dialog's working directory can be set with setDirectory(). Each file in the current directory can be selected using the selectFile() function.

The \l{dialogs/standarddialogs}{Standard Dialogs} example shows how to use QFileDialog as well as other built-in Qt dialogs.

By default, a platform-native file dialog will be used if the platform has one. In that case, the widgets which would otherwise be used to construct the dialog will not be instantiated, so related accessors such as layout() and itemDelegate() will return null. Also, not all platforms show file dialogs with a title bar, so be aware that the caption text might not be visible to the user. You can set the \l DontUseNativeDialog option to ensure that the widget-based implementation will be used instead of the native dialog.

See also
QDir, QFileInfo, QFile, QColorDialog, QFontDialog, {Standard Dialogs Example}, {Qt Widgets - Application Example}

Definition at line 63 of file qfiledialog.h.

Member Enumeration Documentation

◆ AcceptMode

\value AcceptOpen \value AcceptSave

Enumerator
AcceptOpen 
AcceptSave 

Definition at line 78 of file qfiledialog.h.

◆ DialogLabel

\value LookIn \value FileName \value FileType \value Accept \value Reject

Enumerator
LookIn 
FileName 
FileType 
Accept 
Reject 

Definition at line 80 of file qfiledialog.h.

◆ FileMode

This enum is used to indicate what the user may select in the file dialog; i.e. what the dialog will return if the user clicks OK.

\value AnyFile The name of a file, whether it exists or not. \value ExistingFile The name of a single existing file. \value Directory The name of a directory. Both files and directories are displayed. However, the native Windows file dialog does not support displaying files in the directory chooser. \value ExistingFiles The names of zero or more existing files.

See also
setFileMode()
Enumerator
AnyFile 
ExistingFile 
Directory 
ExistingFiles 

Definition at line 76 of file qfiledialog.h.

◆ Option

\value ShowDirsOnly Only show directories in the file dialog. By default both files and directories are shown. (Valid only in the \l Directory file mode.)

\value DontResolveSymlinks Don't resolve symlinks in the file dialog. By default symlinks are resolved.

\value DontConfirmOverwrite Don't ask for confirmation if an existing file is selected. By default confirmation is requested.

Note: This opption is not supported on macOS when using the native file dialog.

\value DontUseNativeDialog Don't use the native file dialog. By default, the native file dialog is used unless you use a subclass of QFileDialog that contains the Q_OBJECT macro, or the platform does not have a native dialog of the type that you require.

{Note:} This option must be set before changing dialog properties or showing the dialog.

\value ReadOnly Indicates that the model is readonly.

\value HideNameFilterDetails Indicates if the file name filter details are hidden or not.

\value DontUseCustomDirectoryIcons Always use the default directory icon. Some platforms allow the user to set a different icon. Custom icon lookup cause a big performance impact over network or removable drives. Setting this will enable the QFileIconProvider::DontUseCustomDirectoryIcons option in the icon provider. This enum value was added in Qt 5.2.

Enumerator
ShowDirsOnly 
DontResolveSymlinks 
DontConfirmOverwrite 
DontUseNativeDialog 
ReadOnly 
HideNameFilterDetails 
DontUseCustomDirectoryIcons 

Definition at line 83 of file qfiledialog.h.

◆ ViewMode

This enum describes the view mode of the file dialog; i.e. what information about each file will be displayed.

\value Detail Displays an icon, a name, and details for each item in the directory. \value List Displays only an icon and a name for each item in the directory.

See also
setViewMode()
Enumerator
Detail 
List 

Definition at line 74 of file qfiledialog.h.

Constructor & Destructor Documentation

◆ QFileDialog() [1/3]

QFileDialog::QFileDialog ( QWidget parent,
Qt::WindowFlags  f 
)

Definition at line 357 of file qfiledialog.cpp.

Here is the caller graph for this function:

◆ QFileDialog() [2/3]

QFileDialog::QFileDialog ( QWidget parent = nullptr,
const QString caption = QString(),
const QString directory = QString(),
const QString filter = QString() 
)
explicit

Constructs a file dialog with the given parent and caption that initially displays the contents of the specified directory. The contents of the directory are filtered before being shown in the dialog, using a semicolon-separated list of filters specified by filter.

Definition at line 372 of file qfiledialog.cpp.

◆ ~QFileDialog()

QFileDialog::~QFileDialog ( )

Destroys the file dialog.

Definition at line 401 of file qfiledialog.cpp.

◆ QFileDialog() [3/3]

QFileDialog::QFileDialog ( const QFileDialogArgs args)
protected

Definition at line 388 of file qfiledialog.cpp.

Member Function Documentation

◆ accept()

void QFileDialog::accept ( )
overrideprotectedvirtual

\reimp

Reimplemented from QDialog.

Definition at line 2715 of file qfiledialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ acceptMode()

QFileDialog::AcceptMode QFileDialog::acceptMode ( ) const

Definition at line 1854 of file qfiledialog.cpp.

◆ changeEvent()

void QFileDialog::changeEvent ( QEvent e)
overrideprotectedvirtual

\reimp

Reimplemented from QWidget.

Definition at line 529 of file qfiledialog.cpp.

Here is the call graph for this function:

◆ currentChanged

void QFileDialog::currentChanged ( const QString path)
signal

When the current file changes for local operations, this signal is emitted with the new file name as the path parameter.

See also
filesSelected()

◆ currentUrlChanged

void QFileDialog::currentUrlChanged ( const QUrl url)
signal

When the current file changes, this signal is emitted with the new file URL as the url parameter.

See also
urlsSelected()
Since
5.2

◆ defaultSuffix()

QString QFileDialog::defaultSuffix ( ) const

Definition at line 1877 of file qfiledialog.cpp.

◆ directory()

QDir QFileDialog::directory ( ) const

Returns the directory currently being displayed in the dialog.

Definition at line 982 of file qfiledialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ directoryEntered

void QFileDialog::directoryEntered ( const QString directory)
signal
Since
4.3

This signal is emitted for local operations when the user enters a directory.

◆ directoryUrl()

QUrl QFileDialog::directoryUrl ( ) const

Returns the url of the directory currently being displayed in the dialog.

Since
5.2

Definition at line 1031 of file qfiledialog.cpp.

Here is the call graph for this function:

◆ directoryUrlEntered

void QFileDialog::directoryUrlEntered ( const QUrl directory)
signal

This signal is emitted when the user enters a directory.

Since
5.2

◆ done()

void QFileDialog::done ( int  result)
overrideprotectedvirtual

\reimp

Reimplemented from QDialog.

Definition at line 2697 of file qfiledialog.cpp.

Here is the call graph for this function:

◆ fileMode()

QFileDialog::FileMode QFileDialog::fileMode ( ) const

Definition at line 1737 of file qfiledialog.cpp.

◆ fileSelected

void QFileDialog::fileSelected ( const QString file)
signal

When the selection changes for local operations and the dialog is accepted, this signal is emitted with the (possibly empty) selected file.

See also
currentChanged(), QDialog::Accepted
Here is the caller graph for this function:

◆ filesSelected

void QFileDialog::filesSelected ( const QStringList selected)
signal

When the selection changes for local operations and the dialog is accepted, this signal is emitted with the (possibly empty) list of selected files.

See also
currentChanged(), QDialog::Accepted
Here is the caller graph for this function:

◆ filter()

QDir::Filters QFileDialog::filter ( ) const
Since
4.4

Returns the filter that is used when displaying files.

See also
setFilter()

Definition at line 1519 of file qfiledialog.cpp.

◆ filterSelected

void QFileDialog::filterSelected ( const QString filter)
signal
Since
4.3

This signal is emitted when the user selects a filter.

◆ getExistingDirectory()

QString QFileDialog::getExistingDirectory ( QWidget parent = nullptr,
const QString caption = QString(),
const QString dir = QString(),
Options  options = ShowDirsOnly 
)
static

This is a convenience static function that will return an existing directory selected by the user.

This function creates a modal file dialog with the given parent widget. If parent is not \nullptr, the dialog will be shown centered over the parent widget.

The dialog's working directory is set to dir, and the caption is set to caption. Either of these may be an empty string in which case the current directory and a default caption will be used respectively.

The options argument holds various options about how to run the dialog, see the QFileDialog::Option enum for more information on the flags you can pass. To ensure a native file dialog, \l{QFileDialog::}{ShowDirsOnly} must be set.

On Windows and \macos, this static function will use the native file dialog and not a QFileDialog. However, the native Windows file dialog does not support displaying files in the directory chooser. You need to pass \l{QFileDialog::}{DontUseNativeDialog} to display files using a QFileDialog.

Note that the \macos native file dialog does not show a title bar.

On Unix/X11, the normal behavior of the file dialog is to resolve and follow symlinks. For example, if {/usr/tmp} is a symlink to {/var/tmp}, the file dialog will change to {/var/tmp} after entering {/usr/tmp}. If options includes DontResolveSymlinks, the file dialog will treat symlinks as regular directories.

On Windows, the dialog will spin a blocking modal event loop that will not dispatch any QTimers, and if parent is not \nullptr then it will position the dialog just below the parent's title bar.

Warning
Do not delete parent during the execution of the dialog. If you want to do this, you should create the dialog yourself using one of the QFileDialog constructors.
See also
getOpenFileName(), getOpenFileNames(), getSaveFileName()

Definition at line 2584 of file qfiledialog.cpp.

Here is the caller graph for this function:

◆ getExistingDirectoryUrl()

QUrl QFileDialog::getExistingDirectoryUrl ( QWidget parent = nullptr,
const QString caption = QString(),
const QUrl dir = QUrl(),
Options  options = ShowDirsOnly,
const QStringList supportedSchemes = QStringList() 
)
static

This is a convenience static function that will return an existing directory selected by the user. If the user presses Cancel, it returns an empty url.

The function is used similarly to QFileDialog::getExistingDirectory(). In particular parent, caption, dir and options are used in the exact same way.

The main difference with QFileDialog::getExistingDirectory() comes from the ability offered to the user to select a remote directory. That's why the return type and the type of dir is QUrl.

The supportedSchemes argument allows to restrict the type of URLs the user will be able to select. It is a way for the application to declare the protocols it will support to fetch the file content. An empty list means that no restriction is applied (the default). Supported for local files ("file" scheme) is implicit and always enabled; it is not necessary to include it in the restriction.

When possible, this static function will use the native file dialog and not a QFileDialog. On platforms which don't support selecting remote files, Qt will allow to select only local files.

See also
getExistingDirectory(), getOpenFileUrl(), getOpenFileUrls(), getSaveFileUrl()
Since
5.2

Definition at line 2625 of file qfiledialog.cpp.

Here is the caller graph for this function:

◆ getOpenFileContent()

QFileDialog::getOpenFileContent ( const QString nameFilter,
const std::function< void(const QString &, const QByteArray &)> &  fileContentsReady 
)
static

This is a convenience static function that will return the content of a file selected by the user.

This function is used to access local files on Qt for WebAssembly, where the web sandbox places restrictions on how such access may happen. Its implementation will make the browser display a native file dialog, where the user makes the file selection based on the parameter nameFilter.

It can also be used on other platforms, where it will fall back to using QFileDialog.

The function is asynchronous and returns immediately. The fileOpenCompleted callback will be called when a file has been selected and its contents have been read into memory.

Since
5.13

Definition at line 2314 of file qfiledialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getOpenFileName()

QString QFileDialog::getOpenFileName ( QWidget parent = nullptr,
const QString caption = QString(),
const QString dir = QString(),
const QString filter = QString(),
QString selectedFilter = nullptr,
Options  options = Options() 
)
static

This is a convenience static function that returns an existing file selected by the user. If the user presses Cancel, it returns a null string.

The function creates a modal file dialog with the given parent widget. If parent is not \nullptr, the dialog will be shown centered over the parent widget.

The file dialog's working directory will be set to dir. If dir includes a file name, the file will be selected. Only files that match the given filter are shown. The filter selected is set to selectedFilter. The parameters dir, selectedFilter, and filter may be empty strings. If you want multiple filters, separate them with ';;', for example:

The options argument holds various options about how to run the dialog, see the QFileDialog::Option enum for more information on the flags you can pass.

The dialog's caption is set to caption. If caption is not specified then a default caption will be used.

On Windows, and \macos, this static function will use the native file dialog and not a QFileDialog. Note that the \macos native file dialog does not show a title bar.

On Windows the dialog will spin a blocking modal event loop that will not dispatch any QTimers, and if parent is not \nullptr then it will position the dialog just below the parent's title bar.

On Unix/X11, the normal behavior of the file dialog is to resolve and follow symlinks. For example, if {/usr/tmp} is a symlink to {/var/tmp}, the file dialog will change to {/var/tmp} after entering {/usr/tmp}. If options includes DontResolveSymlinks, the file dialog will treat symlinks as regular directories.

Warning
Do not delete parent during the execution of the dialog. If you want to do this, you should create the dialog yourself using one of the QFileDialog constructors.
See also
getOpenFileNames(), getSaveFileName(), getExistingDirectory()

Definition at line 2107 of file qfiledialog.cpp.

Here is the caller graph for this function:

◆ getOpenFileNames()

QStringList QFileDialog::getOpenFileNames ( QWidget parent = nullptr,
const QString caption = QString(),
const QString dir = QString(),
const QString filter = QString(),
QString selectedFilter = nullptr,
Options  options = Options() 
)
static

This is a convenience static function that will return one or more existing files selected by the user.

This function creates a modal file dialog with the given parent widget. If parent is not \nullptr, the dialog will be shown centered over the parent widget.

The file dialog's working directory will be set to dir. If dir includes a file name, the file will be selected. The filter is set to filter so that only those files which match the filter are shown. The filter selected is set to selectedFilter. The parameters dir, selectedFilter and filter may be empty strings. If you need multiple filters, separate them with ';;', for instance:

The dialog's caption is set to caption. If caption is not specified then a default caption will be used.

On Windows, and \macos, this static function will use the native file dialog and not a QFileDialog. Note that the \macos native file dialog does not show a title bar.

On Windows the dialog will spin a blocking modal event loop that will not dispatch any QTimers, and if parent is not \nullptr then it will position the dialog just below the parent's title bar.

On Unix/X11, the normal behavior of the file dialog is to resolve and follow symlinks. For example, if {/usr/tmp} is a symlink to {/var/tmp}, the file dialog will change to {/var/tmp} after entering {/usr/tmp}. The options argument holds various options about how to run the dialog, see the QFileDialog::Option enum for more information on the flags you can pass.

Warning
Do not delete parent during the execution of the dialog. If you want to do this, you should create the dialog yourself using one of the QFileDialog constructors.
See also
getOpenFileName(), getSaveFileName(), getExistingDirectory()

Definition at line 2220 of file qfiledialog.cpp.

Here is the caller graph for this function:

◆ getOpenFileUrl()

QUrl QFileDialog::getOpenFileUrl ( QWidget parent = nullptr,
const QString caption = QString(),
const QUrl dir = QUrl(),
const QString filter = QString(),
QString selectedFilter = nullptr,
Options  options = Options(),
const QStringList supportedSchemes = QStringList() 
)
static

This is a convenience static function that returns an existing file selected by the user. If the user presses Cancel, it returns an empty url.

The function is used similarly to QFileDialog::getOpenFileName(). In particular parent, caption, dir, filter, selectedFilter and options are used in the exact same way.

The main difference with QFileDialog::getOpenFileName() comes from the ability offered to the user to select a remote file. That's why the return type and the type of dir is QUrl.

The supportedSchemes argument allows to restrict the type of URLs the user will be able to select. It is a way for the application to declare the protocols it will support to fetch the file content. An empty list means that no restriction is applied (the default). Supported for local files ("file" scheme) is implicit and always enabled; it is not necessary to include it in the restriction.

When possible, this static function will use the native file dialog and not a QFileDialog. On platforms which don't support selecting remote files, Qt will allow to select only local files.

See also
getOpenFileName(), getOpenFileUrls(), getSaveFileUrl(), getExistingDirectoryUrl()
Since
5.2

Definition at line 2150 of file qfiledialog.cpp.

Here is the caller graph for this function:

◆ getOpenFileUrls()

QList< QUrl > QFileDialog::getOpenFileUrls ( QWidget parent = nullptr,
const QString caption = QString(),
const QUrl dir = QUrl(),
const QString filter = QString(),
QString selectedFilter = nullptr,
Options  options = Options(),
const QStringList supportedSchemes = QStringList() 
)
static

This is a convenience static function that will return one or more existing files selected by the user. If the user presses Cancel, it returns an empty list.

The function is used similarly to QFileDialog::getOpenFileNames(). In particular parent, caption, dir, filter, selectedFilter and options are used in the exact same way.

The main difference with QFileDialog::getOpenFileNames() comes from the ability offered to the user to select remote files. That's why the return type and the type of dir are respectively QList<QUrl> and QUrl.

The supportedSchemes argument allows to restrict the type of URLs the user will be able to select. It is a way for the application to declare the protocols it will support to fetch the file content. An empty list means that no restriction is applied (the default). Supported for local files ("file" scheme) is implicit and always enabled; it is not necessary to include it in the restriction.

When possible, this static function will use the native file dialog and not a QFileDialog. On platforms which don't support selecting remote files, Qt will allow to select only local files.

See also
getOpenFileNames(), getOpenFileUrl(), getSaveFileUrl(), getExistingDirectoryUrl()
Since
5.2

Definition at line 2269 of file qfiledialog.cpp.

Here is the caller graph for this function:

◆ getSaveFileName()

QString QFileDialog::getSaveFileName ( QWidget parent = nullptr,
const QString caption = QString(),
const QString dir = QString(),
const QString filter = QString(),
QString selectedFilter = nullptr,
Options  options = Options() 
)
static

This is a convenience static function that will return a file name selected by the user. The file does not have to exist.

It creates a modal file dialog with the given parent widget. If parent is not \nullptr, the dialog will be shown centered over the parent widget.

The file dialog's working directory will be set to dir. If dir includes a file name, the file will be selected. Only files that match the filter are shown. The filter selected is set to selectedFilter. The parameters dir, selectedFilter, and filter may be empty strings. Multiple filters are separated with ';;'. For instance:

The options argument holds various options about how to run the dialog, see the QFileDialog::Option enum for more information on the flags you can pass.

The default filter can be chosen by setting selectedFilter to the desired value.

The dialog's caption is set to caption. If caption is not specified, a default caption will be used.

On Windows, and \macos, this static function will use the native file dialog and not a QFileDialog.

On Windows the dialog will spin a blocking modal event loop that will not dispatch any QTimers, and if parent is not \nullptr then it will position the dialog just below the parent's title bar. On \macos, with its native file dialog, the filter argument is ignored.

On Unix/X11, the normal behavior of the file dialog is to resolve and follow symlinks. For example, if {/usr/tmp} is a symlink to {/var/tmp}, the file dialog will change to {/var/tmp} after entering {/usr/tmp}. If options includes DontResolveSymlinks the file dialog will treat symlinks as regular directories.

Warning
Do not delete parent during the execution of the dialog. If you want to do this, you should create the dialog yourself using one of the QFileDialog constructors.
See also
getOpenFileName(), getOpenFileNames(), getExistingDirectory()

Definition at line 2470 of file qfiledialog.cpp.

Here is the caller graph for this function:

◆ getSaveFileUrl()

QUrl QFileDialog::getSaveFileUrl ( QWidget parent = nullptr,
const QString caption = QString(),
const QUrl dir = QUrl(),
const QString filter = QString(),
QString selectedFilter = nullptr,
Options  options = Options(),
const QStringList supportedSchemes = QStringList() 
)
static

This is a convenience static function that returns a file selected by the user. The file does not have to exist. If the user presses Cancel, it returns an empty url.

The function is used similarly to QFileDialog::getSaveFileName(). In particular parent, caption, dir, filter, selectedFilter and options are used in the exact same way.

The main difference with QFileDialog::getSaveFileName() comes from the ability offered to the user to select a remote file. That's why the return type and the type of dir is QUrl.

The supportedSchemes argument allows to restrict the type of URLs the user will be able to select. It is a way for the application to declare the protocols it will support to save the file content. An empty list means that no restriction is applied (the default). Supported for local files ("file" scheme) is implicit and always enabled; it is not necessary to include it in the restriction.

When possible, this static function will use the native file dialog and not a QFileDialog. On platforms which don't support selecting remote files, Qt will allow to select only local files.

See also
getSaveFileName(), getOpenFileUrl(), getOpenFileUrls(), getExistingDirectoryUrl()
Since
5.2

Definition at line 2513 of file qfiledialog.cpp.

Here is the caller graph for this function:

◆ history()

QStringList QFileDialog::history ( ) const

Returns the browsing history of the filedialog as a list of paths.

Definition at line 1912 of file qfiledialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ iconProvider()

QAbstractFileIconProvider * QFileDialog::iconProvider ( ) const

Returns the icon provider used by the filedialog.

Definition at line 1979 of file qfiledialog.cpp.

◆ itemDelegate()

QAbstractItemDelegate * QFileDialog::itemDelegate ( ) const

Returns the item delegate used to render the items in the views in the filedialog.

Definition at line 1955 of file qfiledialog.cpp.

◆ labelText()

QString QFileDialog::labelText ( DialogLabel  label) const

Returns the text shown in the filedialog in the specified label.

Definition at line 2031 of file qfiledialog.cpp.

◆ nameFilters()

QStringList QFileDialog::nameFilters ( ) const
Since
4.4

Returns the file type filters that are in operation on this file dialog.

Definition at line 1461 of file qfiledialog.cpp.

◆ open [1/2]

void QDialog::open
slot
Since
4.5

Shows the dialog as a \l{QDialog::Modal Dialogs}{window modal dialog}, returning immediately.

See also
exec(), show(), result(), setWindowModality()

Definition at line 87 of file qdialog.cpp.

◆ open() [2/2]

void QFileDialog::open ( QObject receiver,
const char *  member 
)
Since
4.5

This function connects one of its signals to the slot specified by receiver and member. The specific signal depends is filesSelected() if fileMode is ExistingFiles and fileSelected() if fileMode is anything else.

The signal will be disconnected from the slot when the dialog is closed.

Definition at line 855 of file qfiledialog.cpp.

Here is the call graph for this function:

◆ options()

QFileDialog::Options QFileDialog::options ( ) const

Definition at line 833 of file qfiledialog.cpp.

Here is the caller graph for this function:

◆ restoreState()

bool QFileDialog::restoreState ( const QByteArray state)
Since
4.3 Restores the dialogs's layout, history and current directory to the state specified.

Typically this is used in conjunction with QSettings to restore the size from a past session.

Returns false if there are errors

Definition at line 485 of file qfiledialog.cpp.

Here is the call graph for this function:

◆ saveFileContent()

void QFileDialog::saveFileContent ( const QByteArray fileContent,
const QString fileNameHint = QString() 
)
static

This is a convenience static function that saves fileContent to a file, using a file name and location chosen by the user. fileNameHint can be provided to suggest a file name to the user.

This function is used to save files to the local file system on Qt for WebAssembly, where the web sandbox places restrictions on how such access may happen. Its implementation will make the browser display a native file dialog, where the user makes the file selection.

It can also be used on other platforms, where it will fall back to using QFileDialog.

The function is asynchronous and returns immediately.

Since
5.14

Definition at line 2393 of file qfiledialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ saveState()

QByteArray QFileDialog::saveState ( ) const
Since
4.3 Saves the state of the dialog's layout, history and current directory.

Typically this is used in conjunction with QSettings to remember the size for a future session. A version number is stored as part of the data.

Definition at line 449 of file qfiledialog.cpp.

◆ selectedFiles()

QStringList QFileDialog::selectedFiles ( ) const

Returns a list of strings containing the absolute paths of the selected files in the dialog. If no files are selected, or the mode is not ExistingFiles or ExistingFile, selectedFiles() contains the current path in the viewport.

See also
selectedNameFilter(), selectFile()

Definition at line 1303 of file qfiledialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ selectedMimeTypeFilter()

QString QFileDialog::selectedMimeTypeFilter ( ) const
Since
5.9
Returns
The mimetype of the file that the user selected in the file dialog.

Definition at line 1636 of file qfiledialog.cpp.

Here is the call graph for this function:

◆ selectedNameFilter()

QString QFileDialog::selectedNameFilter ( ) const
Since
4.4

Returns the filter that the user selected in the file dialog.

See also
selectedFiles()

Definition at line 1503 of file qfiledialog.cpp.

Here is the caller graph for this function:

◆ selectedUrls()

QList< QUrl > QFileDialog::selectedUrls ( ) const

Returns a list of urls containing the selected files in the dialog. If no files are selected, or the mode is not ExistingFiles or ExistingFile, selectedUrls() contains the current path in the viewport.

See also
selectedNameFilter(), selectUrl()
Since
5.2

Definition at line 1332 of file qfiledialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ selectFile()

void QFileDialog::selectFile ( const QString filename)

Selects the given filename in the file dialog.

See also
selectedFiles()

Definition at line 1083 of file qfiledialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ selectNameFilter()

void QFileDialog::selectNameFilter ( const QString filter)
Since
4.4

Sets the current file type filter. Multiple filters can be passed in filter by separating them with semicolons or spaces.

See also
setNameFilter(), setNameFilters(), selectedNameFilter()

Definition at line 1474 of file qfiledialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ selectUrl()

void QFileDialog::selectUrl ( const QUrl url)

Selects the given url in the file dialog.

Note
The non-native QFileDialog supports only local files.
See also
selectedUrls()
Since
5.2

Definition at line 1127 of file qfiledialog.cpp.

Here is the call graph for this function:

◆ setAcceptMode()

void QFileDialog::setAcceptMode ( QFileDialog::AcceptMode  mode)

Definition at line 1753 of file qfiledialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setDefaultSuffix()

void QFileDialog::setDefaultSuffix ( const QString suffix)

Definition at line 1871 of file qfiledialog.cpp.

◆ setDirectory() [1/2]

void QFileDialog::setDirectory ( const QDir directory)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 298 of file qfiledialog.h.

◆ setDirectory() [2/2]

void QFileDialog::setDirectory ( const QString directory)

Sets the file dialog's current directory.

Note
On iOS, if you set directory to \l{QStandardPaths::standardLocations()} {QStandardPaths::standardLocations(QStandardPaths::PicturesLocation).last()}, a native image picker dialog will be used for accessing the user's photo album. The filename returned can be loaded using QFile and related APIs. For this to be enabled, the Info.plist assigned to QMAKE_INFO_PLIST in the project file must contain the key NSPhotoLibraryUsageDescription. See Info.plist documentation from Apple for more information regarding this key. This feature was added in Qt 5.5.

Definition at line 942 of file qfiledialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setDirectoryUrl()

void QFileDialog::setDirectoryUrl ( const QUrl directory)

Sets the file dialog's current directory url.

Note
The non-native QFileDialog supports only local files.
On Windows, it is possible to pass URLs representing one of the {virtual folders}, such as "Computer" or "Network". This is done by passing a QUrl using the scheme clsid followed by the CLSID value with the curly braces removed. For example the URL clsid:374DE290-123F-4565-9164-39C4925E467B denotes the download location. For a complete list of possible values, see the MSDN documentation on \l{https://docs.microsoft.com/en-us/windows/win32/shell/knownfolderid}{KNOWNFOLDERID}. This feature was added in Qt 5.5.
See also
QUuid
Since
5.2

Definition at line 1009 of file qfiledialog.cpp.

Here is the call graph for this function:

◆ setFileMode()

void QFileDialog::setFileMode ( QFileDialog::FileMode  mode)

Definition at line 1706 of file qfiledialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setFilter()

void QFileDialog::setFilter ( QDir::Filters  filters)
Since
4.4

Sets the filter used by the model to filters. The filter is used to specify the kind of files that should be shown.

See also
filter()

Definition at line 1536 of file qfiledialog.cpp.

◆ setHistory()

void QFileDialog::setHistory ( const QStringList paths)

Sets the browsing history of the filedialog to contain the given paths.

Definition at line 1887 of file qfiledialog.cpp.

◆ setIconProvider()

void QFileDialog::setIconProvider ( QAbstractFileIconProvider provider)

Sets the icon provider used by the filedialog to the specified provider.

Definition at line 1966 of file qfiledialog.cpp.

◆ setItemDelegate()

void QFileDialog::setItemDelegate ( QAbstractItemDelegate delegate)

Sets the item delegate used to render items in the views in the file dialog to the given delegate.

Any existing delegate will be removed, but not deleted. QFileDialog does not take ownership of delegate.

Warning
You should not share the same instance of a delegate between views. Doing so can cause incorrect or unintuitive editing behavior since each view connected to a given delegate may receive the \l{QAbstractItemDelegate::}{closeEditor()} signal, and attempt to access, modify or close an editor that has already been closed.

Note that the model used is QFileSystemModel. It has custom item data roles, which is described by the \l{QFileSystemModel::}{Roles} enum. You can use a QFileIconProvider if you only want custom icons.

See also
itemDelegate(), setIconProvider(), QFileSystemModel

Definition at line 1943 of file qfiledialog.cpp.

◆ setLabelText()

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

Sets the text shown in the filedialog in the specified label.

Definition at line 2021 of file qfiledialog.cpp.

Here is the caller graph for this function:

◆ setNameFilter()

void QFileDialog::setNameFilter ( const QString filter)
Since
4.4

Sets the filter used in the file dialog to the given filter.

If filter contains a pair of parentheses containing one or more filename-wildcard patterns, separated by spaces, then only the text contained in the parentheses is used as the filter. This means that these calls are all equivalent:

Note
With Android's native file dialog, the mime type matching the given name filter is used because only mime types are supported.
See also
setMimeTypeFilters(), setNameFilters()

Definition at line 1380 of file qfiledialog.cpp.

Here is the call graph for this function:

◆ setNameFilters()

void QFileDialog::setNameFilters ( const QStringList filters)
Since
4.4

Sets the filters used in the file dialog.

Note that the filter {*.*} is not portable, because the historical assumption that the file extension determines the file type is not consistent on every operating system. It is possible to have a file with no dot in its name (for example, Makefile). In a native Windows file dialog, {*.*} will match such files, while in other types of file dialogs it may not. So it is better to use {*} if you mean to select any file.

\l setMimeTypeFilters() has the advantage of providing all possible name filters for each file type. For example, JPEG images have three possible extensions; if your application can open such files, selecting the image/jpeg mime type as a filter will allow you to open all of them.

Definition at line 1429 of file qfiledialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setOption()

void QFileDialog::setOption ( Option  option,
bool  on = true 
)
Since
4.5 Sets the given option to be enabled if on is true; otherwise, clears the given option.

Options (particularly the DontUseNativeDialogs option) should be set before changing dialog properties or showing the dialog.

Setting options while the dialog is visible is not guaranteed to have an immediate effect on the dialog (depending on the option and on the platform).

Setting options after changing other properties may cause these values to have no effect.

See also
options, testOption()

Definition at line 754 of file qfiledialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setOptions()

void QFileDialog::setOptions ( Options  options)

Definition at line 794 of file qfiledialog.cpp.

Here is the caller graph for this function:

◆ setSidebarUrls()

void QFileDialog::setSidebarUrls ( const QList< QUrl > &  urls)
Since
4.3 Sets the urls that are located in the sidebar.

For instance:

The file dialog will then look like this:

See also
sidebarUrls()

Definition at line 423 of file qfiledialog.cpp.

Here is the caller graph for this function:

◆ setSupportedSchemes()

void QFileDialog::setSupportedSchemes ( const QStringList schemes)

Definition at line 1784 of file qfiledialog.cpp.

◆ setViewMode()

void QFileDialog::setViewMode ( QFileDialog::ViewMode  mode)

Definition at line 1671 of file qfiledialog.cpp.

◆ setVisible()

void QFileDialog::setVisible ( bool  visible)
overridevirtual

\reimp

Reimplemented from QDialog.

Definition at line 872 of file qfiledialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sidebarUrls()

QList< QUrl > QFileDialog::sidebarUrls ( ) const
Since
4.3 Returns a list of urls that are currently in the sidebar

Definition at line 434 of file qfiledialog.cpp.

◆ supportedSchemes()

QStringList QFileDialog::supportedSchemes ( ) const

Definition at line 1790 of file qfiledialog.cpp.

◆ testOption()

bool QFileDialog::testOption ( Option  option) const
Since
4.5

Returns true if the given option is enabled; otherwise, returns false.

See also
options, setOption()

Definition at line 769 of file qfiledialog.cpp.

Here is the caller graph for this function:

◆ urlSelected

void QFileDialog::urlSelected ( const QUrl url)
signal

When the selection changes and the dialog is accepted, this signal is emitted with the (possibly empty) selected url.

See also
currentUrlChanged(), QDialog::Accepted
Since
5.2

◆ urlsSelected

void QFileDialog::urlsSelected ( const QList< QUrl > &  urls)
signal

When the selection changes and the dialog is accepted, this signal is emitted with the (possibly empty) list of selected urls.

See also
currentUrlChanged(), QDialog::Accepted
Since
5.2

◆ viewMode()

QFileDialog::ViewMode QFileDialog::viewMode ( ) const

Definition at line 1683 of file qfiledialog.cpp.

Property Documentation

◆ acceptMode

QFileDialog::acceptMode
readwrite

the accept mode of the dialog

The action mode defines whether the dialog is for opening or saving files.

By default, this property is set to \l{AcceptOpen}.

See also
AcceptMode

Definition at line 303 of file qfiledialog.h.

◆ defaultSuffix

QFileDialog::defaultSuffix
readwrite

suffix added to the filename if no other suffix was specified

This property specifies a string that will be added to the filename if it has no suffix already. The suffix is typically used to indicate the file type (e.g. "txt" indicates a text file).

If the first character is a dot ('.'), it is removed.

Definition at line 303 of file qfiledialog.h.

◆ fileMode

QFileDialog::fileMode
readwrite

the file mode of the dialog

The file mode defines the number and type of items that the user is expected to select in the dialog.

By default, this property is set to AnyFile.

This function will set the labels for the FileName and \l{QFileDialog::}{Accept} \l{DialogLabel}s. It is possible to set custom text after the call to setFileMode().

See also
FileMode

Definition at line 303 of file qfiledialog.h.

◆ options

QFileDialog::options
readwrite

the various options that affect the look and feel of the dialog

Since
4.5

By default, all options are disabled.

Options (particularly the DontUseNativeDialogs option) should be set before changing dialog properties or showing the dialog.

Setting options while the dialog is visible is not guaranteed to have an immediate effect on the dialog (depending on the option and on the platform).

Setting options after changing other properties may cause these values to have no effect.

See also
setOption(), testOption()

Definition at line 303 of file qfiledialog.h.

◆ supportedSchemes

QFileDialog::supportedSchemes
readwrite

the URL schemes that the file dialog should allow navigating to.

Since
5.6

Setting this property allows to restrict the type of URLs the user will be able to select. It is a way for the application to declare the protocols it will support to fetch the file content. An empty list means that no restriction is applied (the default). Supported for local files ("file" scheme) is implicit and always enabled; it is not necessary to include it in the restriction.

Definition at line 303 of file qfiledialog.h.

◆ viewMode

QFileDialog::viewMode
readwrite

the way files and directories are displayed in the dialog

By default, the Detail mode is used to display information about files and directories.

See also
ViewMode

Definition at line 303 of file qfiledialog.h.


The documentation for this class was generated from the following files: