Sur cette page

QFileDialog Class

Fournit une boîte de dialogue permettant aux utilisateurs de sélectionner des fichiers ou des répertoires. Plus d'informations...

En-tête : #include <QFileDialog>
CMake : find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake : QT += widgets
Héritages : QDialog

Types publics

enum AcceptMode { AcceptOpen, AcceptSave }
enum DialogLabel { LookIn, FileName, FileType, Accept, Reject }
enum FileMode { AnyFile, ExistingFile, Directory, ExistingFiles }
enum Option { ShowDirsOnly, DontResolveSymlinks, DontConfirmOverwrite, DontUseNativeDialog, ReadOnly, …, DontUseCustomDirectoryIcons }
flags Options
enum ViewMode { Detail, List }

Propriétés

Fonctions publiques

QFileDialog(QWidget *parent, Qt::WindowFlags flags)
QFileDialog(QWidget *parent = nullptr, const QString &caption = QString(), const QString &directory = QString(), const QString &filter = QString())
virtual ~QFileDialog()
QFileDialog::AcceptMode acceptMode() const
QString defaultSuffix() const
QDir directory() const
QUrl directoryUrl() const
QFileDialog::FileMode fileMode() const
QDir::Filters filter() const
QStringList history() const
QAbstractFileIconProvider *iconProvider() const
QAbstractItemDelegate *itemDelegate() const
QString labelText(QFileDialog::DialogLabel label) const
QStringList mimeTypeFilters() const
QStringList nameFilters() const
void open(QObject *receiver, const char *member)
QFileDialog::Options options() const
QAbstractProxyModel *proxyModel() const
bool restoreState(const QByteArray &state)
QByteArray saveState() const
void selectFile(const QString &filename)
void selectMimeTypeFilter(const QString &filter)
void selectNameFilter(const QString &filter)
void selectUrl(const QUrl &url)
QStringList selectedFiles() const
QString selectedMimeTypeFilter() const
QString selectedNameFilter() const
QList<QUrl> selectedUrls() const
void setAcceptMode(QFileDialog::AcceptMode mode)
void setDefaultSuffix(const QString &suffix)
void setDirectory(const QString &directory)
void setDirectory(const QDir &directory)
void setDirectoryUrl(const QUrl &directory)
void setFileMode(QFileDialog::FileMode mode)
void setFilter(QDir::Filters filters)
void setHistory(const QStringList &paths)
void setIconProvider(QAbstractFileIconProvider *provider)
void setItemDelegate(QAbstractItemDelegate *delegate)
void setLabelText(QFileDialog::DialogLabel label, const QString &text)
void setMimeTypeFilters(const QStringList &filters)
void setNameFilter(const QString &filter)
void setNameFilters(const QStringList &filters)
void setOption(QFileDialog::Option option, bool on = true)
void setOptions(QFileDialog::Options options)
void setProxyModel(QAbstractProxyModel *proxyModel)
void setSidebarUrls(const QList<QUrl> &urls)
void setSupportedSchemes(const QStringList &schemes)
void setViewMode(QFileDialog::ViewMode mode)
QList<QUrl> sidebarUrls() const
QStringList supportedSchemes() const
bool testOption(QFileDialog::Option option) const
QFileDialog::ViewMode viewMode() const

Fonctions publiques réimplémentées

virtual void setVisible(bool visible) override

Signaux

void currentChanged(const QString &path)
void currentUrlChanged(const QUrl &url)
void directoryEntered(const QString &directory)
void directoryUrlEntered(const QUrl &directory)
void fileSelected(const QString &file)
void filesSelected(const QStringList &selected)
void filterSelected(const QString &filter)
void urlSelected(const QUrl &url)
void urlsSelected(const QList<QUrl> &urls)

Membres publics statiques

QString getExistingDirectory(QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString(), QFileDialog::Options options = ShowDirsOnly)
QUrl getExistingDirectoryUrl(QWidget *parent = nullptr, const QString &caption = QString(), const QUrl &dir = QUrl(), QFileDialog::Options options = ShowDirsOnly, const QStringList &supportedSchemes = QStringList())
void getOpenFileContent(const QString &nameFilter, const std::function<void (const QString &, const QByteArray &)> &fileOpenCompleted, QWidget *parent = nullptr)
QString getOpenFileName(QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString(), const QString &filter = QString(), QString *selectedFilter = nullptr, QFileDialog::Options options = Options())
QStringList getOpenFileNames(QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString(), const QString &filter = QString(), QString *selectedFilter = nullptr, QFileDialog::Options options = Options())
QUrl getOpenFileUrl(QWidget *parent = nullptr, const QString &caption = QString(), const QUrl &dir = QUrl(), const QString &filter = QString(), QString *selectedFilter = nullptr, QFileDialog::Options options = Options(), const QStringList &supportedSchemes = QStringList())
QList<QUrl> getOpenFileUrls(QWidget *parent = nullptr, const QString &caption = QString(), const QUrl &dir = QUrl(), const QString &filter = QString(), QString *selectedFilter = nullptr, QFileDialog::Options options = Options(), const QStringList &supportedSchemes = QStringList())
QString getSaveFileName(QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString(), const QString &filter = QString(), QString *selectedFilter = nullptr, QFileDialog::Options options = Options())
QUrl getSaveFileUrl(QWidget *parent = nullptr, const QString &caption = QString(), const QUrl &dir = QUrl(), const QString &filter = QString(), QString *selectedFilter = nullptr, QFileDialog::Options options = Options(), const QStringList &supportedSchemes = QStringList())
void saveFileContent(const QByteArray &fileContent, const QString &fileNameHint, QWidget *parent = nullptr)

Fonctions protégées réimplémentées

virtual void accept() override
virtual void changeEvent(QEvent *e) override
virtual void done(int result) override

Description détaillée

La classe QFileDialog permet aux utilisateurs de parcourir le système de fichiers et de sélectionner un ou plusieurs fichiers ou répertoires.

Boîte de dialogue d'ouverture de fichier

QFileDialog est généralement utilisé pour inviter les utilisateurs à ouvrir ou à enregistrer des fichiers, ou à sélectionner des répertoires. La manière la plus simple d'utiliser QFileDialog est de recourir à ses fonctions statiques de commodité, telles que getOpenFileName().

fileName = QFileDialog::getOpenFileName(this,
    tr("Open Image"), "/home/jana", tr("Image Files (*.png *.jpg *.bmp)"));

Dans cet exemple, un QFileDialog modal est créé à l'aide d'une fonction statique. La boîte de dialogue affiche initialement le contenu du répertoire /home/jana et présente les fichiers correspondant aux modèles de "Image Files (*.png *.jpg *.bmp)". Le titre de la fenêtre est Open Image.

Filtres de fichiers

Filtrage des fichiers par nom ou par extension

Pour filtrer les fichiers affichés par nom ou par extension, utilisez les fonctions setNameFilter() ou setNameFilters(). Il est possible de spécifier plusieurs filtres en les séparant par deux points-virgules (; ;):

QFileDialog dialog(this);
dialog.setNameFilter(tr("Images (*.png *.xpm *.jpg);;Text files (*.txt);;XML files (*.xml)"));
dialog.exec();

Filtrage des fichiers par type MIME

Pour filtrer les fichiers affichés par type MIME, utilisez la fonction setMimeTypeFilters() :

QStringList mimeTypeFilters({"image/jpeg", // will show "JPEG image (*.jpeg *.jpg *.jpe)
                             "image/png",  // will show "PNG image (*.png)"
                             "application/octet-stream" // will show "All files (*)"
                            });

QFileDialog dialog(this);
dialog.setMimeTypeFilters(mimeTypeFilters);
dialog.exec();

Sensibilité à la casse des filtres de fichiers

En fonction de la plate-forme cible, les filtres de fichiers peuvent être sensibles à la casse ou insensibles à la casse.

Modes de fichiers

QFileDialog prend en charge plusieurs modes de fichiers, qui déterminent ce que l'utilisateur peut sélectionner :

QFileDialog dialog(this);
dialog.setFileMode(QFileDialog::AnyFile);
  • AnyFile: l'utilisateur peut sélectionner n'importe quel fichier, y compris des fichiers qui n'existent pas (utile pour les boîtes de dialogue Save As ).
  • Fichier existant: l'utilisateur doit sélectionner un fichier existant.
  • Directory (Répertoire) : L'utilisateur peut sélectionner un répertoire.

Voir l'énumération QFileDialog::FileMode pour la liste complète des modes.

La propriété fileMode contient le mode de fonctionnement actuel. Utilisez setFileMode() pour le modifier.

Modes d'affichage

QFileDialog propose deux modes d'affichage :

  • Liste: Affiche les fichiers et les répertoires sous la forme d'une simple liste.
  • Détail: Affiche des informations supplémentaires telles que la taille du fichier et la date de modification.

Définissez le mode d'affichage à l'aide de setViewMode() :

dialog.setViewMode(QFileDialog::Detail);

Récupération des fichiers sélectionnés

Une fois la boîte de dialogue acceptée, utilisez selectedFiles() pour récupérer la sélection de l'utilisateur :

QStringList fileNames;
if (dialog.exec())
    fileNames = dialog.selectedFiles();

Le répertoire de travail de la boîte de dialogue peut être défini avec setDirectory(). Vous pouvez présélectionner un fichier avec selectFile().

Notes relatives à la plate-forme

Par défaut, QFileDialog utilise le dialogue de fichier natif de la plateforme s'il est disponible. Dans ce cas, certaines API spécifiques aux widgets (telles que layout() et itemDelegate()) peuvent renvoyer null. En outre, toutes les plateformes n'affichent pas les boîtes de dialogue de fichiers avec une barre de titre, de sorte que le texte de la légende peut ne pas être visible.

Pour forcer l'utilisation de la boîte de dialogue basée sur le widget Qt, définissez l'option DontUseNativeDialog ou l'attribut d'application AA_DontUseNativeDialogs.

Voir aussi QDir, QFileInfo, QFile, QColorDialog, QFontDialog, et Standard Dialogs Example.

Documentation sur les types de membres

enum QFileDialog::AcceptMode

ConstanteValeur
QFileDialog::AcceptOpen0
QFileDialog::AcceptSave1

enum QFileDialog::DialogLabel

ConstanteValeur
QFileDialog::LookIn0
QFileDialog::FileName1
QFileDialog::FileType2
QFileDialog::Accept3
QFileDialog::Reject4

enum QFileDialog::FileMode

Cette énumération est utilisée pour indiquer ce que l'utilisateur peut sélectionner dans la boîte de dialogue du fichier, c'est-à-dire ce que la boîte de dialogue renvoie si l'utilisateur clique sur OK.

ConstanteValeurDescription
QFileDialog::AnyFile0Le nom d'un fichier, qu'il existe ou non.
QFileDialog::ExistingFile1Le nom d'un seul fichier existant.
QFileDialog::Directory2Le nom d'un répertoire. Les fichiers et les répertoires sont affichés. Toutefois, la boîte de dialogue de fichiers native de Windows ne permet pas d'afficher les fichiers dans le sélecteur de répertoire.
QFileDialog::ExistingFiles3Le nom de zéro ou plusieurs fichiers existants.

Voir également setFileMode().

enum QFileDialog::Option
flags QFileDialog::Options

Options qui influencent le comportement de la boîte de dialogue.

ConstanteValeurDescription de la constante
QFileDialog::ShowDirsOnly0x00000001N'affiche que les répertoires. Par défaut, les fichiers et les répertoires sont affichés.
This option is only effective in the Directory file mode.
QFileDialog::DontResolveSymlinks0x00000002Ne pas résoudre les liens symboliques. Par défaut, les liens symboliques sont résolus.
QFileDialog::DontConfirmOverwrite0x00000004Ne pas demander de confirmation si un fichier existant est sélectionné. Par défaut, une confirmation est demandée.
This option is only effective if acceptMode is AcceptSave). It is furthermore not used on macOS for native file dialogs.
QFileDialog::DontUseNativeDialog0x00000008N'utilisez pas une boîte de dialogue de fichiers native de la plate-forme, mais celle basée sur des widgets fournie par Qt.
By default, a native file dialog is shown unless you use a subclass of QFileDialog that contains the Q_OBJECT macro, the global AA_DontUseNativeDialogs application attribute is set, or the platform does not have a native dialog of the type that you require.
Pour que l'option soit efficace, vous devez la définir avant de modifier d'autres propriétés de la boîte de dialogue ou d'afficher la boîte de dialogue.
QFileDialog::ReadOnly0x00000010Indique que le modèle est en lecture seule.
QFileDialog::HideNameFilterDetails0x00000020Indique si les détails du filtre de nom de fichier sont cachés ou non.
QFileDialog::DontUseCustomDirectoryIcons0x00000040Utilisez toujours l'icône de répertoire par défaut.
Certaines plateformes permettent à l'utilisateur de définir une icône différente, mais la recherche d'une icône personnalisée peut entraîner des problèmes de performance importants sur le réseau ou les disques amovibles.
Setting this will enable the DontUseCustomDirectoryIcons option in iconProvider().
Cette valeur d'enum a été ajoutée dans Qt 5.2.

Le type Options est un typedef pour QFlags<Option>. Il stocke une combinaison OU de valeurs d'options.

Voir également options et testOption.

enum QFileDialog::ViewMode

Cette énumération décrit le mode d'affichage de la boîte de dialogue des fichiers, c'est-à-dire les informations affichées pour chaque fichier.

ConstanteValeurDescription
QFileDialog::Detail0Affiche une icône, un nom et des détails pour chaque élément du répertoire.
QFileDialog::List1Affiche uniquement une icône et un nom pour chaque élément du répertoire.

Voir également setViewMode().

Propriété Documentation

acceptMode : AcceptMode

Cette propriété contient le mode d'acceptation de la boîte de dialogue.

Le mode d'action définit si la boîte de dialogue est destinée à l'ouverture ou à l'enregistrement de fichiers.

Par défaut, cette propriété est définie sur AcceptOpen.

Fonctions d'accès :

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

Voir également AcceptMode.

defaultSuffix : QString

Suffixe ajouté au nom de fichier si aucun autre suffixe n'a été spécifié.

Cette propriété spécifie une chaîne de caractères qui est ajoutée au nom de fichier s'il n'a pas encore de suffixe. Le suffixe est généralement utilisé pour indiquer le type de fichier (par exemple, "txt" indique un fichier texte).

Si le premier caractère est un point ('.'), il est supprimé.

Fonctions d'accès :

QString defaultSuffix() const
void setDefaultSuffix(const QString &suffix)

fileMode : FileMode

Cette propriété définit le mode de fichier de la boîte de dialogue.

Le mode fichier définit le nombre et le type d'éléments que l'utilisateur doit sélectionner dans la boîte de dialogue.

Par défaut, cette propriété est définie sur AnyFile.

Cette fonction définit les étiquettes pour FileName et Accept DialogLabel s. Il est possible de définir un texte personnalisé après l'appel à setFileMode().

Fonctions d'accès :

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

Voir également FileMode.

options : Options

Cette propriété contient les différentes options qui affectent l'aspect et la convivialité de la boîte de dialogue.

Par défaut, toutes les options sont désactivées.

Les options (en particulier l'option DontUseNativeDialog ) doivent être définies avant de modifier les propriétés de la boîte de dialogue ou de l'afficher.

La définition d'options alors que la boîte de dialogue est visible ne garantit pas un effet immédiat sur la boîte de dialogue (en fonction de l'option et de la plate-forme).

Le fait de définir des options après avoir modifié d'autres propriétés peut faire en sorte que ces valeurs n'aient aucun effet.

Fonctions d'accès :

QFileDialog::Options options() const
void setOptions(QFileDialog::Options options)

Voir aussi setOption() et testOption().

supportedSchemes : QStringList

Cette propriété contient les schémas d'URL vers lesquels la boîte de dialogue des fichiers doit permettre de naviguer.

La définition de cette propriété permet de restreindre le type d'URL que l'utilisateur peut sélectionner. C'est un moyen pour l'application de déclarer les protocoles qu'elle prend en charge pour récupérer le contenu du fichier. Une liste vide signifie qu'aucune restriction n'est appliquée (par défaut). La prise en charge des fichiers locaux (schéma "file") est implicite et toujours activée ; il n'est pas nécessaire de l'inclure dans la restriction.

Fonctions d'accès :

QStringList supportedSchemes() const
void setSupportedSchemes(const QStringList &schemes)

viewMode : ViewMode

Cette propriété définit la manière dont les fichiers et les répertoires sont affichés dans la boîte de dialogue.

Par défaut, le mode Detail est utilisé pour afficher des informations sur les fichiers et les répertoires.

Fonctions d'accès :

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

Voir aussi ViewMode.

Documentation des fonctions membres

QFileDialog::QFileDialog(QWidget *parent, Qt::WindowFlags flags)

Construit une boîte de dialogue de fichier avec l'adresse parent et le widget flags.

[explicit] QFileDialog::QFileDialog(QWidget *parent = nullptr, const QString &caption = QString(), const QString &directory = QString(), const QString &filter = QString())

Construit une boîte de dialogue de fichier avec les données parent et caption qui affiche initialement le contenu du répertoire spécifié directory. Le contenu du répertoire est filtré avant d'être affiché dans la boîte de dialogue, à l'aide d'une liste de filtres séparés par des points-virgules, spécifiée par filter.

[virtual noexcept] QFileDialog::~QFileDialog()

Détruit la boîte de dialogue du fichier.

[override virtual protected] void QFileDialog::accept()

Réimplémente : QDialog::accept().

[override virtual protected] void QFileDialog::changeEvent(QEvent *e)

Réimplémente : QWidget::changeEvent(QEvent *event).

[signal] void QFileDialog::currentChanged(const QString &path)

Lorsque le fichier courant change pour des opérations locales, ce signal est émis avec le nouveau nom de fichier comme paramètre path.

Voir aussi filesSelected().

[signal] void QFileDialog::currentUrlChanged(const QUrl &url)

Lorsque le fichier en cours est modifié, ce signal est émis avec la nouvelle URL du fichier comme paramètre url.

Voir aussi urlsSelected().

QDir QFileDialog::directory() const

Renvoie le répertoire actuellement affiché dans la boîte de dialogue.

Voir aussi setDirectory().

[signal] void QFileDialog::directoryEntered(const QString &directory)

Ce signal est émis pour les opérations locales lorsque l'utilisateur entre sur le site directory.

QUrl QFileDialog::directoryUrl() const

Renvoie l'url du répertoire actuellement affiché dans la boîte de dialogue.

Voir aussi setDirectoryUrl().

[signal] void QFileDialog::directoryUrlEntered(const QUrl &directory)

Ce signal est émis lorsque l'utilisateur entre sur le site directory.

[override virtual protected] void QFileDialog::done(int result)

Réimplémente : QDialog::done(int r).

[signal] void QFileDialog::fileSelected(const QString &file)

Lorsque la sélection change pour les opérations locales et que le dialogue est accepté, ce signal est émis avec la sélection (éventuellement vide) file.

Voir également currentChanged() et QDialog::Accepted.

[signal] void QFileDialog::filesSelected(const QStringList &selected)

Lorsque la sélection change pour les opérations locales et que le dialogue est accepté, ce signal est émis avec la liste (éventuellement vide) des fichiers selected.

Voir aussi currentChanged() et QDialog::Accepted.

QDir::Filters QFileDialog::filter() const

Renvoie le filtre utilisé pour l'affichage des fichiers.

Voir aussi setFilter().

[signal] void QFileDialog::filterSelected(const QString &filter)

Ce signal est émis lorsque l'utilisateur sélectionne un site filter.

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

Il s'agit d'une fonction statique de commodité qui renvoie un répertoire existant sélectionné par l'utilisateur.

QString dir = QFileDialog::getExistingDirectory(this, tr("Open Directory"),
                                                "/home",
                                                QFileDialog::ShowDirsOnly
                                                | QFileDialog::DontResolveSymlinks);

Cette fonction crée une boîte de dialogue modale sur les fichiers avec le widget parent donné. Si parent n'est pas nullptr, la boîte de dialogue est affichée centrée sur le widget parent.

Le répertoire de travail de la boîte de dialogue est défini à dir, et le titre est défini à caption. L'un ou l'autre peut être une chaîne vide, auquel cas le répertoire actuel et un titre par défaut sont utilisés respectivement.

L'argument options contient diverses options relatives à l'exécution de la boîte de dialogue. Voir l'énumération QFileDialog::Option pour plus d'informations sur les drapeaux que vous pouvez passer. Pour garantir un dialogue de fichier natif, ShowDirsOnly doit être défini.

Sous Windows et macOS, cette fonction statique utilise la boîte de dialogue de fichier native et non une QFileDialog. Cependant, la boîte de dialogue de fichier native de Windows ne prend pas en charge l'affichage des fichiers dans le sélecteur de répertoire. Vous devez passer l'option DontUseNativeDialog ou définir l'attribut d'application global AA_DontUseNativeDialogs pour afficher les fichiers à l'aide de QFileDialog.

Notez que la boîte de dialogue de fichiers native de macOS n'affiche pas de barre de titre.

Sous Unix/X11, le comportement normal de la boîte de dialogue des fichiers est de résoudre et de suivre les liens symboliques. Par exemple, si /usr/tmp est un lien symbolique vers /var/tmp, la boîte de dialogue du fichier passe à /var/tmp après avoir saisi /usr/tmp. Si options inclut DontResolveSymlinks, la boîte de dialogue des fichiers traite les liens symboliques comme des répertoires normaux.

Sous Windows, la boîte de dialogue génère une boucle modale bloquante qui ne déclenche pas de QTimers, et si parent n'est pas nullptr, la boîte de dialogue est positionnée juste en dessous de la barre de titre du parent.

Voir également getOpenFileName(), getOpenFileNames() et getSaveFileName().

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

Il s'agit d'une fonction statique de commodité qui renvoie un répertoire existant sélectionné par l'utilisateur. Si l'utilisateur appuie sur Annuler, elle renvoie une URL vide.

Cette fonction est utilisée de la même manière que QFileDialog::getExistingDirectory(). En particulier, parent, caption, dir et options sont utilisés exactement de la même manière.

La principale différence avec QFileDialog::getExistingDirectory() réside dans la possibilité offerte à l'utilisateur de sélectionner un répertoire distant. C'est pourquoi le type de retour et le type de dir est QUrl.

L'argument supportedSchemes permet de restreindre le type d'URL que l'utilisateur peut sélectionner. C'est un moyen pour l'application de déclarer les protocoles qu'elle prend en charge pour récupérer le contenu du fichier. Une liste vide signifie qu'aucune restriction n'est appliquée (par défaut). La prise en charge des fichiers locaux (schéma "file") est implicite et toujours activée ; il n'est pas nécessaire de l'inclure dans la restriction.

Dans la mesure du possible, cette fonction statique utilise la boîte de dialogue de fichier native et non une QFileDialog. Sur les plates-formes qui ne prennent pas en charge la sélection de fichiers distants, Qt permet de sélectionner uniquement des fichiers locaux.

Voir également getExistingDirectory(), getOpenFileUrl(), getOpenFileUrls() et getSaveFileUrl().

[static] void QFileDialog::getOpenFileContent(const QString &nameFilter, const std::function<void (const QString &, const QByteArray &)> &fileOpenCompleted, QWidget *parent = nullptr)

Il s'agit d'une fonction statique de commodité qui renvoie le contenu d'un fichier sélectionné par l'utilisateur.

Utilisez cette fonction pour accéder aux fichiers locaux sur Qt for WebAssembly, si le bac à sable web restreint l'accès aux fichiers. Sa mise en œuvre permet d'afficher une boîte de dialogue de fichier native dans le navigateur, où l'utilisateur sélectionne un fichier en fonction du paramètre nameFilter.

parent est ignoré sur Qt for WebAssembly. Passez parent sur d'autres plateformes, pour faire de la fenêtre contextuelle un enfant d'un autre widget. Si la plate-forme ne prend pas en charge les boîtes de dialogue de fichiers natives, la fonction revient à QFileDialog.

La fonction est asynchrone et retourne immédiatement. Le rappel fileOpenCompleted sera appelé lorsqu'un fichier aura été sélectionné et que son contenu aura été lu en mémoire.

auto fileContentReady = [](const QString &fileName, const QByteArray &fileContent) {
    if (fileName.isEmpty()) {
        // No file was selected
    } else {
        // Use fileName and fileContent
    }
};
QFileDialog::getOpenFileContent("Images (*.png *.xpm *.jpg)",  fileContentReady);

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

Il s'agit d'une fonction statique de commodité qui renvoie un fichier existant sélectionné par l'utilisateur. Si l'utilisateur appuie sur Annuler, elle renvoie une chaîne de caractères nulle.

QString fileName = QFileDialog::getOpenFileName(this, tr("Open File"),
                                                "/home",
                                                tr("Images (*.png *.xpm *.jpg)"));

La fonction crée une boîte de dialogue modale sur les fichiers avec le widget parent donné. Si parent n'est pas nullptr, la boîte de dialogue est centrée sur le widget parent.

Le répertoire de travail de la boîte de dialogue est défini sur dir. Si dir contient un nom de fichier, ce dernier est sélectionné. Seuls les fichiers correspondant à l'adresse filter sont affichés. Le filtre sélectionné est selectedFilter. Les paramètres dir, selectedFilter et filter peuvent être des chaînes vides. Si vous souhaitez plusieurs filtres, séparez-les par ';;', par exemple :

"Images (*.png *.xpm *.jpg);;Text files (*.txt);;XML files (*.xml)"

L'argument options contient diverses options relatives à l'exécution de la boîte de dialogue. Voir l'énumération QFileDialog::Option pour plus d'informations sur les drapeaux que vous pouvez passer.

Le titre de la boîte de dialogue est défini à caption. Si caption n'est pas spécifié, un titre par défaut sera utilisé.

Sous Windows et macOS, cette fonction statique utilise la boîte de dialogue de fichier native et non une boîte de dialogue QFileDialog. Notez que la boîte de dialogue de fichier native de macOS n'affiche pas de barre de titre.

Sous Windows, la boîte de dialogue fait tourner une boucle d'événements modale bloquante qui ne distribue pas de QTimers, et si parent n'est pas nullptr, elle positionne la boîte de dialogue juste en dessous de la barre de titre du parent.

Sous Unix/X11, le comportement normal de la boîte de dialogue des fichiers est de résoudre et de suivre les liens symboliques. Par exemple, si /usr/tmp est un lien symbolique vers /var/tmp, la boîte de dialogue du fichier passe à /var/tmp après avoir saisi /usr/tmp. Si options inclut DontResolveSymlinks, la boîte de dialogue des fichiers traite les liens symboliques comme des répertoires normaux.

Voir également getOpenFileNames(), getSaveFileName() et getExistingDirectory().

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

Il s'agit d'une fonction statique de commodité qui renvoie un ou plusieurs fichiers existants sélectionnés par l'utilisateur.

QStringList files = QFileDialog::getOpenFileNames(
                        this,
                        "Select one or more files to open",
                        "/home",
                        "Images (*.png *.xpm *.jpg)");

Cette fonction crée une boîte de dialogue modale avec le widget parent donné. Si parent n'est pas nullptr, la boîte de dialogue est centrée sur le widget parent.

Le répertoire de travail de la boîte de dialogue est défini sur dir. Si dir contient un nom de fichier, le fichier est sélectionné. Le filtre est défini sur filter de sorte que seuls les fichiers correspondant au filtre sont affichés. Le filtre sélectionné est selectedFilter. Les paramètres dir, selectedFilter et filter peuvent être des chaînes vides. Si vous avez besoin de plusieurs filtres, séparez-les par ';;', par exemple :

"Images (*.png *.xpm *.jpg);;Text files (*.txt);;XML files (*.xml)"

La légende de la boîte de dialogue est définie sur caption. Si caption n'est pas spécifié, une légende par défaut est utilisée.

Sous Windows et macOS, cette fonction statique utilise la boîte de dialogue de fichier native et non une QFileDialog. Notez que la boîte de dialogue de fichier native de macOS n'affiche pas de barre de titre.

Sous Windows, la boîte de dialogue fait tourner une boucle d'événement modal bloquante qui ne distribue pas de QTimers, et si parent n'est pas nullptr, elle positionne la boîte de dialogue juste en dessous de la barre de titre du parent.

Sous Unix/X11, le comportement normal de la boîte de dialogue des fichiers est de résoudre et de suivre les liens symboliques. Par exemple, si /usr/tmp est un lien symbolique vers /var/tmp, la boîte de dialogue du fichier passera à /var/tmp après avoir saisi /usr/tmp. L'argument options contient diverses options sur la manière d'exécuter la boîte de dialogue, voir l'énumération QFileDialog::Option pour plus d'informations sur les drapeaux que vous pouvez passer.

Voir aussi getOpenFileName(), getSaveFileName(), et getExistingDirectory().

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

Il s'agit d'une fonction statique de commodité qui renvoie un fichier existant sélectionné par l'utilisateur. Si l'utilisateur appuie sur Annuler, elle renvoie une URL vide.

Cette fonction est utilisée de la même manière que QFileDialog::getOpenFileName(). En particulier, parent, caption, dir, filter, selectedFilter et options sont utilisés exactement de la même manière.

La principale différence avec QFileDialog::getOpenFileName() réside dans la possibilité offerte à l'utilisateur de sélectionner un fichier distant. C'est pourquoi le type de retour et le type de dir est QUrl.

L'argument supportedSchemes permet de restreindre le type d'URL que l'utilisateur peut sélectionner. C'est un moyen pour l'application de déclarer les protocoles qu'elle prendra en charge pour récupérer le contenu du fichier. Une liste vide signifie qu'aucune restriction n'est appliquée (par défaut). La prise en charge des fichiers locaux (schéma "file") est implicite et toujours activée ; il n'est pas nécessaire de l'inclure dans la restriction.

Dans la mesure du possible, cette fonction statique utilise la boîte de dialogue de fichier native et non un QFileDialog. Sur les plates-formes qui ne prennent pas en charge la sélection de fichiers distants, Qt permettra de sélectionner uniquement des fichiers locaux.

Voir également getOpenFileName(), getOpenFileUrls(), getSaveFileUrl() et getExistingDirectoryUrl().

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

Il s'agit d'une fonction statique de commodité qui renvoie un ou plusieurs fichiers existants sélectionnés par l'utilisateur. Si l'utilisateur appuie sur Annuler, la fonction renvoie une liste vide.

Cette fonction est utilisée de la même manière que QFileDialog::getOpenFileNames(). En particulier, parent, caption, dir, filter, selectedFilter et options sont utilisés exactement de la même manière.

La principale différence avec QFileDialog::getOpenFileNames() réside dans la possibilité offerte à l'utilisateur de sélectionner des fichiers distants. C'est pourquoi le type de retour et le type de dir sont respectivement QList<QUrl> et QUrl.

L'argument supportedSchemes permet de restreindre le type d'URL que l'utilisateur peut sélectionner. C'est un moyen pour l'application de déclarer les protocoles qu'elle prend en charge pour récupérer le contenu du fichier. Une liste vide signifie qu'aucune restriction n'est appliquée (par défaut). La prise en charge des fichiers locaux (schéma "file") est implicite et toujours activée ; il n'est pas nécessaire de l'inclure dans la restriction.

Dans la mesure du possible, cette fonction statique utilise la boîte de dialogue de fichier native et non un QFileDialog. Sur les plates-formes qui ne prennent pas en charge la sélection de fichiers distants, Qt permettra de sélectionner uniquement des fichiers locaux.

Voir également getOpenFileNames(), getOpenFileUrl(), getSaveFileUrl() et getExistingDirectoryUrl().

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

Il s'agit d'une fonction statique de commodité qui renvoie un nom de fichier sélectionné par l'utilisateur. Le fichier ne doit pas nécessairement exister.

Elle crée une boîte de dialogue modale avec le widget parent donné. Si parent n'est pas nullptr, la boîte de dialogue sera affichée centrée sur le widget parent.

QString fileName = QFileDialog::getSaveFileName(this, tr("Save File"),
                                                "/home/jana/untitled.png",
                                                tr("Images (*.png *.xpm *.jpg)"));

Le répertoire de travail de la boîte de dialogue est défini sur dir. Si dir contient un nom de fichier, celui-ci est sélectionné. Seuls les fichiers correspondant à filter sont affichés. Le filtre sélectionné est selectedFilter. Les paramètres dir, selectedFilter et filter peuvent être des chaînes vides. Les filtres multiples sont séparés par ';;'. Par exemple :

"Images (*.png *.xpm *.jpg);;Text files (*.txt);;XML files (*.xml)"

L'argument options contient diverses options sur la manière d'exécuter la boîte de dialogue. Voir l'énumération QFileDialog::Option pour plus d'informations sur les drapeaux que vous pouvez passer.

Le filtre par défaut peut être choisi en fixant selectedFilter à la valeur souhaitée.

Le titre de la boîte de dialogue est fixé à caption. Si caption n'est pas spécifié, un titre par défaut est utilisé.

Sous Windows et macOS, cette fonction statique utilise la boîte de dialogue de fichier native et non une QFileDialog.

Sous Windows, la boîte de dialogue génère une boucle événementielle modale bloquante qui n'envoie pas de QTimers, et si parent n'est pas nullptr, elle positionne la boîte de dialogue juste en dessous de la barre de titre du parent. Sous macOS, avec sa boîte de dialogue de fichiers native, l'argument filtre est ignoré.

Sous Unix/X11, le comportement normal de la boîte de dialogue des fichiers est de résoudre et de suivre les liens symboliques. Par exemple, si /usr/tmp est un lien symbolique vers /var/tmp, la boîte de dialogue des fichiers passe à /var/tmp après avoir saisi /usr/tmp. Si options inclut DontResolveSymlinks, la boîte de dialogue des fichiers traite les liens symboliques comme des répertoires normaux.

Voir également getOpenFileName(), getOpenFileNames() et getExistingDirectory().

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

Il s'agit d'une fonction statique de commodité qui renvoie un fichier sélectionné par l'utilisateur. Le fichier ne doit pas nécessairement exister. Si l'utilisateur appuie sur Annuler, la fonction renvoie une URL vide.

Cette fonction est utilisée de la même manière que QFileDialog::getSaveFileName(). En particulier, parent, caption, dir, filter, selectedFilter et options sont utilisés exactement de la même manière.

La principale différence avec QFileDialog::getSaveFileName() réside dans la possibilité offerte à l'utilisateur de sélectionner un fichier distant. C'est pourquoi le type de retour et le type de dir est QUrl.

L'argument supportedSchemes permet de restreindre le type d'URL que l'utilisateur peut sélectionner. Il permet à l'application de déclarer les protocoles qu'elle prend en charge pour enregistrer le contenu du fichier. Une liste vide signifie qu'aucune restriction n'est appliquée (par défaut). La prise en charge des fichiers locaux (schéma "file") est implicite et toujours activée ; il n'est pas nécessaire de l'inclure dans la restriction.

Dans la mesure du possible, cette fonction statique utilise la boîte de dialogue de fichier native et non un QFileDialog. Sur les plates-formes qui ne prennent pas en charge la sélection de fichiers distants, Qt permettra de sélectionner uniquement des fichiers locaux.

Voir également getSaveFileName(), getOpenFileUrl(), getOpenFileUrls() et getExistingDirectoryUrl().

QStringList QFileDialog::history() const

Renvoie l'historique de navigation du dialogue de fichiers sous la forme d'une liste de chemins.

Voir aussi setHistory().

QAbstractFileIconProvider *QFileDialog::iconProvider() const

Renvoie le fournisseur d'icônes utilisé par le dialogue de fichiers.

Voir aussi setIconProvider().

QAbstractItemDelegate *QFileDialog::itemDelegate() const

Renvoie le délégué d'élément utilisé pour rendre les éléments dans les vues de la boîte de dialogue.

Voir aussi setItemDelegate().

QString QFileDialog::labelText(QFileDialog::DialogLabel label) const

Renvoie le texte affiché dans la boîte de dialogue du fichier dans l'adresse label spécifiée.

Voir aussi setLabelText().

QStringList QFileDialog::mimeTypeFilters() const

Renvoie les filtres de type MIME appliqués à ce dialogue de fichier.

Voir aussi setMimeTypeFilters().

QStringList QFileDialog::nameFilters() const

Renvoie les filtres de type de fichier appliqués à cette boîte de dialogue.

Voir aussi setNameFilters().

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

Cette fonction affiche le dialogue et connecte le slot spécifié par receiver et member au signal qui informe des changements de sélection. Si fileMode est ExistingFiles, il s'agit du signal filesSelected(), sinon il s'agit du signal fileSelected().

Le signal est déconnecté de l'emplacement lorsque la boîte de dialogue est fermée.

QAbstractProxyModel *QFileDialog::proxyModel() const

Renvoie le modèle proxy utilisé par la boîte de dialogue du fichier. Par défaut, aucun proxy n'est défini.

Voir aussi setProxyModel().

bool QFileDialog::restoreState(const QByteArray &state)

Restaure la présentation, l'historique et le répertoire actuel des dialogues à l'adresse state spécifiée.

Cette fonction est généralement utilisée en conjonction avec QSettings pour restaurer la taille d'une session passée.

Renvoie false en cas d'erreur

[static] void QFileDialog::saveFileContent(const QByteArray &fileContent, const QString &fileNameHint, QWidget *parent = nullptr)

Il s'agit d'une fonction statique de commodité qui enregistre fileContent dans un fichier, en utilisant un nom de fichier et un emplacement choisis par l'utilisateur. fileNameHint peut être fourni pour suggérer un nom de fichier à l'utilisateur.

Utilisez cette fonction pour enregistrer le contenu dans des fichiers locaux sur Qt for WebAssembly, si le bac à sable Web restreint l'accès aux fichiers. Sa mise en œuvre permet d'afficher une boîte de dialogue de fichier natif dans le navigateur, où l'utilisateur spécifie un fichier de sortie basé sur l'argument fileNameHint.

parent est ignoré sur Qt for WebAssembly. Passez parent sur d'autres plateformes, pour faire de la fenêtre contextuelle un enfant d'un autre widget. Si la plate-forme ne prend pas en charge les dialogues de fichiers natifs, la fonction revient à QFileDialog.

La fonction est asynchrone et retourne immédiatement.

QByteArray imageData; // obtained from e.g. QImage::save()
QFileDialog::saveFileContent(imageData, "myimage.png");

QByteArray QFileDialog::saveState() const

Sauvegarde l'état de la présentation de la boîte de dialogue, de l'historique et du répertoire courant.

Cette fonction est généralement utilisée en conjonction avec QSettings pour mémoriser la taille d'une session ultérieure. Un numéro de version est stocké dans les données.

void QFileDialog::selectFile(const QString &filename)

Sélectionne l'adresse filename dans la boîte de dialogue des fichiers.

Voir aussi selectedFiles().

void QFileDialog::selectMimeTypeFilter(const QString &filter)

Définit le type MIME actuel filter.

void QFileDialog::selectNameFilter(const QString &filter)

Définit le type de fichier actuel filter. Plusieurs filtres peuvent être transmis à filter en les séparant par des points-virgules ou des espaces.

Voir aussi setNameFilter(), setNameFilters(), et selectedNameFilter().

void QFileDialog::selectUrl(const QUrl &url)

Sélectionne l'adresse url dans la boîte de dialogue des fichiers.

Remarque : la version non native de QFileDialog ne prend en charge que les fichiers locaux.

Voir aussi selectedUrls().

QStringList QFileDialog::selectedFiles() const

Renvoie une liste de chaînes contenant les chemins absolus des fichiers sélectionnés dans la boîte de dialogue. Si aucun fichier n'est sélectionné, ou si le mode n'est pas ExistingFiles ou ExistingFile, selectedFiles() contient le chemin actuel dans la fenêtre de visualisation.

Voir aussi selectedNameFilter() et selectFile().

QString QFileDialog::selectedMimeTypeFilter() const

Renvoie le type de fichier que l'utilisateur a sélectionné dans la boîte de dialogue du fichier.

QString QFileDialog::selectedNameFilter() const

Renvoie le filtre que l'utilisateur a sélectionné dans la boîte de dialogue du fichier.

Voir aussi selectedFiles().

QList<QUrl> QFileDialog::selectedUrls() const

Renvoie une liste d'URL contenant les fichiers sélectionnés dans la boîte de dialogue. Si aucun fichier n'est sélectionné, ou si le mode n'est pas ExistingFiles ou ExistingFile, selectedUrls() contient le chemin actuel dans la fenêtre de visualisation.

Voir aussi selectedNameFilter() et selectUrl().

void QFileDialog::setDirectory(const QString &directory)

Définit la boîte de dialogue de fichier actuelle directory.

Remarque : sur iOS, si vous définissez directory sur QStandardPaths::standardLocations(QStandardPaths::PicturesLocation).last(), une boîte de dialogue de sélection d'image native est utilisée pour accéder à l'album photo de l'utilisateur. Le nom de fichier renvoyé peut être chargé à l'aide de QFile et des API correspondantes. Pour que cette fonction soit activée, le fichier Info.plist attribué à QMAKE_INFO_PLIST dans le fichier de projet doit contenir la clé NSPhotoLibraryUsageDescription. Voir la documentation Info.plist d'Apple pour plus d'informations sur cette clé. Cette fonctionnalité a été ajoutée dans Qt 5.5.

Voir également directory().

void QFileDialog::setDirectory(const QDir &directory)

Il s'agit d'une fonction surchargée.

void QFileDialog::setDirectoryUrl(const QUrl &directory)

Définit l'url actuelle de la boîte de dialogue du fichier directory.

Remarque : la version non native de QFileDialog ne prend en charge que les fichiers locaux.

Remarque : sous Windows, il est possible de transmettre des URL représentant l'un des dossiers virtuels, tels que "Ordinateur" ou "Réseau". Pour ce faire, il faut passer une adresse QUrl en utilisant le schéma clsid suivi de la valeur CLSID sans les accolades. Par exemple, l'URL clsid:374DE290-123F-4565-9164-39C4925E467B indique l'emplacement du téléchargement. Pour une liste complète des valeurs possibles, voir la documentation MSDN sur KNOWNFOLDERID. Cette fonctionnalité a été ajoutée dans Qt 5.5.

Voir également directoryUrl() et QUuid.

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

Définit le filtre utilisé par le modèle à filters. Le filtre est utilisé pour spécifier le type de fichiers à afficher.

Voir aussi filter().

void QFileDialog::setHistory(const QStringList &paths)

Configure l'historique de navigation de la boîte de dialogue de fichiers pour qu'il contienne l'adresse paths.

Voir aussi history().

void QFileDialog::setIconProvider(QAbstractFileIconProvider *provider)

Définit le fournisseur d'icônes utilisé par le dialogue de fichier à l'adresse provider.

Voir aussi iconProvider().

void QFileDialog::setItemDelegate(QAbstractItemDelegate *delegate)

Définit le délégué de l'élément utilisé pour rendre les éléments dans les vues de la boîte de dialogue de fichier à l'adresse delegate.

Tout délégué existant sera supprimé, mais pas effacé. QFileDialog ne prend pas possession de delegate.

Attention : Vous ne devez pas partager la même instance d'un délégué entre les vues. En effet, chaque vue connectée à un délégué donné peut recevoir le signal closeEditor() et tenter d'accéder, de modifier ou de fermer un éditeur qui a déjà été fermé.

Notez que le modèle utilisé est QFileSystemModel. Il a des rôles de données d'éléments personnalisés, qui sont décrits par l'enum Roles. Vous pouvez utiliser un QFileIconProvider si vous ne voulez que des icônes personnalisées.

Voir aussi itemDelegate(), setIconProvider() et QFileSystemModel.

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

Définit l'adresse text affichée dans la boîte de dialogue du fichier dans l'adresse label spécifiée.

Voir aussi labelText().

void QFileDialog::setMimeTypeFilters(const QStringList &filters)

Définit le filters utilisé dans la boîte de dialogue du fichier, à partir d'une liste de types MIME.

Méthode de commodité pour setNameFilters(). Utilise QMimeType pour créer un filtre de nom à partir des motifs globaux et de la description définis dans chaque type MIME.

Utilise application/octet-stream pour le filtre "All files (*)", puisqu'il s'agit du type MIME de base pour tous les fichiers.

L'appel à setMimeTypeFilters remplace tous les filtres de noms précédemment définis et modifie la valeur de retour de nameFilters().

QStringList mimeTypeFilters({"image/jpeg", // will show "JPEG image (*.jpeg *.jpg *.jpe)
                             "image/png",  // will show "PNG image (*.png)"
                             "application/octet-stream" // will show "All files (*)"
                            });

QFileDialog dialog(this);
dialog.setMimeTypeFilters(mimeTypeFilters);
dialog.exec();

Voir aussi mimeTypeFilters().

void QFileDialog::setNameFilter(const QString &filter)

Définit le filtre utilisé dans la boîte de dialogue des fichiers à l'adresse filter.

Si filter contient une paire de parenthèses contenant un ou plusieurs motifs de filename-wildcard, séparés par des espaces, seul le texte contenu dans les parenthèses est utilisé comme filtre. Cela signifie que ces appels sont tous équivalents :

dialog.setNameFilter("All C++ files (*.cpp *.cc *.C *.cxx *.c++)");
dialog.setNameFilter("*.cpp *.cc *.C *.cxx *.c++");

Remarque : avec la boîte de dialogue de fichiers native d'Android, le type mime correspondant au filtre de nom donné est utilisé, car seuls les types mime sont pris en charge.

Voir également setMimeTypeFilters() et setNameFilters().

void QFileDialog::setNameFilters(const QStringList &filters)

Définit le filters utilisé dans la boîte de dialogue du fichier.

Notez que le filtre *.* n'est pas portable, car l'hypothèse historique selon laquelle l'extension du fichier détermine le type de fichier n'est pas cohérente sur tous les systèmes d'exploitation. Il est possible d'avoir un fichier dont le nom ne comporte pas de point (par exemple, Makefile). Dans une boîte de dialogue de fichiers Windows, *.* correspond à de tels fichiers, alors que dans d'autres types de boîtes de dialogue de fichiers, il peut ne pas correspondre. Il est donc préférable d'utiliser * si vous souhaitez sélectionner n'importe quel fichier.

const QStringList filters({"Image files (*.png *.xpm *.jpg)",
                           "Text files (*.txt)",
                           "Any files (*)"
                          });
QFileDialog dialog(this);
dialog.setNameFilters(filters);
dialog.exec();

setMimeTypeFilters() a l'avantage de fournir tous les filtres de noms possibles pour chaque type de fichier. Par exemple, les images JPEG ont trois extensions possibles ; si votre application peut ouvrir de tels fichiers, le fait de sélectionner le type mime image/jpeg comme filtre vous permet de les ouvrir tous.

Voir également nameFilters().

void QFileDialog::setOption(QFileDialog::Option option, bool on = true)

Active l'option option si on est vrai ; sinon, efface l'option option.

Les options (en particulier l'option DontUseNativeDialog ) doivent être définies avant de modifier les propriétés de la boîte de dialogue ou de l'afficher.

La définition d'options alors que la boîte de dialogue est visible ne garantit pas un effet immédiat sur la boîte de dialogue (en fonction de l'option et de la plate-forme).

Le fait de définir des options après avoir modifié d'autres propriétés peut faire en sorte que ces valeurs n'aient aucun effet.

Voir également options et testOption().

void QFileDialog::setProxyModel(QAbstractProxyModel *proxyModel)

Définit le modèle des vues à l'adresse proxyModel. Cela est utile si vous souhaitez modifier le modèle sous-jacent, par exemple pour ajouter des colonnes, filtrer des données ou ajouter des lecteurs.

Tout modèle proxy existant est supprimé, mais pas effacé. La boîte de dialogue du fichier devient propriétaire du fichier proxyModel.

Voir également proxyModel().

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

Définit les urls qui se trouvent dans la barre latérale.

Par exemple :

QList<QUrl> urls;
urls << QUrl::fromLocalFile("/Users/foo/Code/qt5")
     << QUrl::fromLocalFile(QStandardPaths::standardLocations(QStandardPaths::MusicLocation).first());

QFileDialog dialog;
dialog.setSidebarUrls(urls);
dialog.setFileMode(QFileDialog::AnyFile);
if (dialog.exec()) {
    // ...
}

La boîte de dialogue du fichier ressemble alors à ceci :

Boîte de dialogue d'ouverture de fichier avec URL dans la barre latérale

Voir aussi sidebarUrls().

[override virtual] void QFileDialog::setVisible(bool visible)

Réimplémente : QDialog::setVisible(bool visible).

QList<QUrl> QFileDialog::sidebarUrls() const

Retourne une liste d'urls qui sont actuellement dans la barre latérale

Voir aussi setSidebarUrls().

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

Renvoie true si le site option est activé ; sinon, renvoie false.

Voir aussi options et setOption().

[signal] void QFileDialog::urlSelected(const QUrl &url)

Lorsque la sélection change et que le dialogue est accepté, ce signal est émis avec la sélection (éventuellement vide) url.

Voir également currentUrlChanged() et QDialog::Accepted.

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

Lorsque la sélection change et que le dialogue est accepté, ce signal est émis avec la liste (éventuellement vide) des urls sélectionnés.

Voir également currentUrlChanged() et QDialog::Accepted.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.