Sur cette page

QQmlFileSelector Class

Classe permettant d'appliquer une QFileSelector au chargement de fichiers QML. Plus d'informations...

En-tête : #include <QQmlFileSelector>
CMake : find_package(Qt6 REQUIRED COMPONENTS Qml)
target_link_libraries(mytarget PRIVATE Qt6::Qml)
qmake : QT += qml
Héritages : QObject

Fonctions publiques

QQmlFileSelector(QQmlEngine *engine, QObject *parent = nullptr)
virtual ~QQmlFileSelector() override
QFileSelector *selector() const
void setExtraSelectors(const QStringList &strings)
void setSelector(QFileSelector *selector)

Description détaillée

QQmlFileSelector applique automatiquement un QFileSelector aux chemins des fichiers qml et des ressources.

Il est utilisé comme suit :

QQmlEngine engine;
QQmlFileSelector* selector = new QQmlFileSelector(&engine);

Ensuite, vous pouvez intervertir les fichiers comme suit :

main.qml
Component.qml
asset.png
+unix/Component.qml
+mac/asset.png

Dans cet exemple, main.qml utilise normalement Component.qml pour le type Component. Cependant, sur une plateforme unix, le sélecteur unix sera présent et la version +unix/Component.qml sera utilisée à la place. Notez que cela revient à remplacer Component.qml par +unix/Component.qml, donc lorsque vous utilisez Component.qml, vous ne devriez pas avoir besoin de modifier les chemins en fonction de la version sélectionnée.

Par exemple, pour transmettre le chemin d'accès au fichier "asset.png", vous devez l'appeler "asset.png" dans tous les fichiers main.qml, Component.qml et +linux/Component.qml. Il sera remplacé par +mac/asset.png sur les plateformes Mac dans tous les cas.

Pour une liste des sélecteurs disponibles, voir QFileSelector.

Votre plateforme peut également fournir des sélecteurs supplémentaires à utiliser. Comme spécifié par QFileSelector, les répertoires utilisés pour la sélection doivent commencer par un caractère "+", de sorte que vous ne déclencherez pas accidentellement cette fonctionnalité à moins que vous n'ayez des répertoires avec de tels noms dans votre projet.

Si un nouveau QQmlFileSelector est défini sur le moteur, l'ancien sera remplacé.

Documentation des fonctions membres

[explicit] QQmlFileSelector::QQmlFileSelector(QQmlEngine *engine, QObject *parent = nullptr)

Crée un nouveau QQmlFileSelector avec l'objet parent parent, qui comprend son propre QFileSelector. engine est le QQmlEngine auquel vous souhaitez appliquer des sélecteurs de fichiers. Il devient également propriétaire du QQmlFileSelector.

[override virtual noexcept] QQmlFileSelector::~QQmlFileSelector()

Détruit l'objet QQmlFileSelector.

[noexcept] QFileSelector *QQmlFileSelector::selector() const

Renvoie l'instance QFileSelector utilisée par QQmlFileSelector.

Voir aussi setSelector().

void QQmlFileSelector::setExtraSelectors(const QStringList &strings)

Ajoute des sélecteurs supplémentaires contenus dans strings à l'instance QFileSelector en cours d'utilisation. Utilisez cette option lorsque des sélecteurs supplémentaires sont tout ce dont vous avez besoin pour éviter d'avoir à créer votre propre instance de QFileSelector.

void QQmlFileSelector::setSelector(QFileSelector *selector)

Définit l'instance QFileSelector à utiliser par QQmlFileSelector à selector. QQmlFileSelector ne prend pas possession du nouveau QFileSelector. Pour réinitialiser QQmlFileSelector afin qu'il utilise son instance interne QFileSelector, appelez setSelector(nullptr).

Voir aussi selector().

© 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.