Spec-Zone.ru › Qt 5.9

Тип QML FolderDialog

Диалог выбора папки. Подробнее...

Заявление об импорте: import Qt.labs.platform 1.0
С момента: Qt 5.8
Наследует:

Dialog

  • Список всех членов, включая унаследованные

Свойства

  • acceptLabel : строка
  • currentFolder : url
  • folder : url
  • options : флаги
  • rejectLabel : строка

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

Тип FolderDialog предоставляет QML API для диалогов выбора папки нативной платформы.

Чтобы отобразить диалог выбора папки, создайте экземпляр FolderDialog, задайте необходимые свойства и вызовите open(). Свойство currentFolder можно использовать для определения текущей выбранной папки в диалоге. Свойство folder обновляется только после окончательного выбора, сделанного при подтверждении диалога.

MenuItem {
    text: "Open..."
    onTriggered: folderDialog.open()
}

FolderDialog {
    id: folderDialog
    currentFolder: viewer.folder
    folder: StandardPaths.standardLocations(StandardPaths.PicturesLocation)[0]
}

MyViewer {
    id: viewer
    folder: folderDialog.folder
}

Доступность

Нативные диалоги выбора папки платформы в настоящее время доступны на следующих платформах:

  • iOS
  • Linux (при использовании темы платформы GTK+)
  • macOS
  • Windows
  • WinRT

Модуль Qt Labs Platform использует Qt Widgets в качестве резервного варианта на платформах, на которых нет нативного решения. Следовательно, приложения, использующие типы из модуля Qt Labs Platform, должны быть связаны с QtWidgets и использовать QApplication вместо QGuiApplication.

Для связи с библиотекой QtWidgets добавьте следующее в файл проекта qmake:

QT += widgets

Создайте экземпляр QApplication в main():

#include <QApplication>
#include <QQmlApplicationEngine>

int main(int argc, char *argv[])
{
    QApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
    QApplication app(argc, argv);
    QQmlApplicationEngine engine;
    engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
    return app.exec();
}

Примечание:Типы в модулях Qt.labs не гарантируют сохранения совместимости в будущих версиях.

См. также FileDialog и StandardPaths.

Документация по свойствам

acceptLabel : строка

Это свойство содержит текст метки, отображаемой на кнопке подтверждения диалога.

При установке пустой строки используется метка по умолчанию для базовой платформы. Метка по умолчанию обычно Открыть.

Значение по умолчанию — пустая строка.

См. также rejectLabel.

currentFolder : url

Это свойство содержит текущую выбранную папку в диалоге.

В отличие от свойства folder, свойство currentFolder обновляется во время выбора папок пользователем в диалоге, даже до окончательного выбора.

См. также folder.

folder : url

Это свойство содержит окончательно выбранную папку.

В отличие от свойства currentFolder, свойство folder обновляется не во время выбора папок пользователем в диалоге, а только после окончательного выбора. То есть, когда пользователь нажал ОК для подтверждения выбора папки. В качестве альтернативы можно обработать сигнал accepted() для получения окончательного выбора.

См. также currentFolder и accepted().

options : флаги

Это свойство содержит различные параметры, влияющие на вид диалога.

По умолчанию все параметры отключены.

Параметры должны быть установлены перед отображением диалога. Установка их во время отображения диалога не гарантирует немедленного эффекта на диалог (в зависимости от параметра и платформы).

Доступные параметры:

Постоянная Описание
FolderDialog.ShowDirsOnly Отображаются только каталоги в диалоге выбора папки. По умолчанию отображаются как папки, так и каталоги.
FolderDialog.DontResolveSymlinks Не разрешать разрешение символических ссылок в диалоге выбора папки. По умолчанию символические ссылки разрешаются.
FolderDialog.ReadOnly Указывает, что создание каталогов в диалоге запрещено.

rejectLabel : строка

Это свойство содержит текст метки, отображаемой на кнопке отказа от диалога.

При установке пустой строки используется метка по умолчанию для базовой платформы. Метка по умолчанию обычно Отмена.

Значение по умолчанию — пустая строка.

См. также acceptLabel.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qml-qt-labs-platform-folderdialog.html

Spec-Zone.ru

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