Spec-Zone.ru › Qt 6.1

Класс QQmlFileSelector

Класс для применения QFileSelector к загрузке файлов QML. Подробнее...

Заголовок: #include <QQmlFileSelector>
CMake: find_package(Qt6 COMPONENTS Qml REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Qml)
qmake: QT += qml
С момента: Qt 5.2
Наследуется от: QObject
  • Список всех членов, включая унаследованные
  • Устаревшие члены

Публичные функции

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

Подробное описание

QQmlFileSelector автоматически применяет QFileSelector к путям к файлам и ресурсам qml.

Используется следующим образом:

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

Затем вы можете заменить файлы следующим образом:

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

В этом примере main.qml обычно использует Component.qml для типа Component. Однако на платформе Unix, селектор Unix будет присутствовать, и вместо этого будет использоваться версия +unix/Component.qml. Обратите внимание, что это работает как замена Component.qml на +unix/Component.qml, поэтому при использовании Component.qml вам не нужно изменять пути в зависимости от выбранной версии.

Например, чтобы передать путь к файлу «asset.png», вы бы ссылались на него просто как «asset.png» во всех файлах main.qml, Component.qml и +linux/Component.qml. На платформах Mac он будет заменён на +mac/asset.png во всех случаях.

Список доступных селекторов см. в QFileSelector.

Ваша платформа также может предоставлять дополнительные селекторы для использования. Как указано в QFileSelector, каталоги, используемые для выбора, должны начинаться с символа «+», поэтому вы случайно не активируете эту функцию, если в вашем проекте нет каталогов с такими именами.

Если новый QQmlFileSelector устанавливается в движке, предыдущий будет заменён. Используйте QQmlFileSelector::get(), чтобы запросить или использовать существующий экземпляр.

Документация по функциям-членам

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

Создаёт новый QQmlFileSelector с родительским объектом parent, который включает свой собственный QFileSelector. engine — QQmlEngine, к которому вы хотите применить селекторы файлов. Он также возьмёт владение QQmlFileSelector.

[override virtual] QQmlFileSelector::~QQmlFileSelector()

Удаляет объект QQmlFileSelector.

[since 5.7] QFileSelector *QQmlFileSelector::selector() const

Возвращает экземпляр QFileSelector, используемый QQmlFileSelector.

Эта функция была добавлена в Qt 5.7.

См. также setSelector().

void QQmlFileSelector::setExtraSelectors(const QStringList &strings)

Добавляет дополнительные селекторы, содержащиеся в strings, к текущему QFileSelector, который используется. Используйте это, когда дополнительных селекторов достаточно, чтобы избежать создания собственного экземпляра QFileSelector.

void QQmlFileSelector::setSelector(QFileSelector *selector)

Устанавливает экземпляр QFileSelector для использования QQmlFileSelector в selector. QQmlFileSelector не принимает владение новым QFileSelector. Чтобы сбросить QQmlFileSelector на использование его внутреннего экземпляра QFileSelector, вызовите setSelector(0).

См. также selector().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qqmlfileselector.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API