QQmlFileSelector Class
Eine Klasse zur Anwendung einer QFileSelector auf das Laden von QML-Dateien. Mehr...
Kopfzeile: | #include <QQmlFileSelector> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Qml) target_link_libraries(mytarget PRIVATE Qt6::Qml) |
qmake: | QT += qml |
Vererbungen: | QObject |
Öffentliche Funktionen
QQmlFileSelector(QQmlEngine *engine, QObject *parent = nullptr) | |
virtual | ~QQmlFileSelector() override |
QFileSelector * | selector() const |
void | setExtraSelectors(const QStringList &strings) |
void | setSelector(QFileSelector *selector) |
Detaillierte Beschreibung
QQmlFileSelector wendet automatisch ein QFileSelector auf qml-Datei- und Asset-Pfade an.
Er wird wie folgt verwendet:
QQmlEngine engine; QQmlFileSelector* selector = new QQmlFileSelector(&engine);
Dann können Sie die Dateien wie folgt austauschen:
main.qml Component.qml asset.png +unix/Component.qml +mac/asset.png
In diesem Beispiel wird main.qml normalerweise Component.qml für den Komponententyp verwenden. Auf einer Unix-Plattform ist jedoch der Unix-Selektor vorhanden und die Version +unix/Component.qml wird stattdessen verwendet. Beachten Sie, dass dies wie ein Austausch von Component.qml mit +unix/Component.qml wirkt, so dass Sie bei der Verwendung von Component.qml keine Pfade ändern müssen, je nachdem welche Version ausgewählt wurde.
Um zum Beispiel den Dateipfad "asset.png" weiterzugeben, würden Sie ihn in allen main.qml, Component.qml und +linux/Component.qml einfach als "asset.png" bezeichnen. Auf Mac-Plattformen wird es in allen Fällen durch +mac/asset.png ersetzt.
Eine Liste der verfügbaren Selektoren finden Sie unter QFileSelector
.
Möglicherweise stellt Ihre Plattform auch zusätzliche Selektoren zur Verfügung, die Sie verwenden können. Wie unter QFileSelector angegeben, müssen Verzeichnisse, die für die Auswahl verwendet werden, mit einem '+'-Zeichen beginnen, so dass Sie diese Funktion nicht versehentlich auslösen, wenn Sie keine Verzeichnisse mit solchen Namen in Ihrem Projekt haben.
Wenn ein neuer QQmlFileSelector in der Engine gesetzt wird, wird der alte ersetzt.
Dokumentation der Mitgliedsfunktionen
[explicit]
QQmlFileSelector::QQmlFileSelector(QQmlEngine *engine, QObject *parent = nullptr)
Erzeugt einen neuen QQmlFileSelector mit dem übergeordneten Objekt parent, das sein eigenes QFileSelector enthält. engine ist der QQmlEngine, auf den Sie die Dateiauswahl anwenden möchten. Es übernimmt auch den Besitz des QQmlFileSelector.
[override virtual noexcept]
QQmlFileSelector::~QQmlFileSelector()
Zerstört das Objekt QQmlFileSelector.
[noexcept]
QFileSelector *QQmlFileSelector::selector() const
Gibt die Instanz QFileSelector zurück, die von QQmlFileSelector verwendet wird.
Siehe auch setSelector().
void QQmlFileSelector::setExtraSelectors(const QStringList &strings)
Fügt zusätzliche Selektoren, die in strings enthalten sind, zu der aktuell verwendeten QFileSelector hinzu. Verwenden Sie dies, wenn Sie nur zusätzliche Selektoren benötigen, um zu vermeiden, dass Sie Ihre eigene QFileSelector Instanz erstellen müssen.
void QQmlFileSelector::setSelector(QFileSelector *selector)
Setzt die Instanz QFileSelector zur Verwendung durch QQmlFileSelector auf selector. QQmlFileSelector übernimmt nicht das Eigentum an der neuen QFileSelector. Um QQmlFileSelector auf die Verwendung seiner internen QFileSelector Instanz zurückzusetzen, rufe setSelector(nullptr
) auf.
Siehe auch selector().
© 2025 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.