Spec-Zone.ru › Qt 5.15

Диалоговое окно выбора цвета QML

Компонент диалога для выбора цвета. Подробнее...

Заявление об импорте: import QtQuick.Dialogs 1.3
С: Qt 5.1
  • Список всех членов, включая унаследованные

Свойства

  • цвет : цвет
  • текущийЦвет : цвет
  • режим : Qt::WindowModality
  • показатьАльфаКанал : bool
  • заголовок : строка
  • видимый : bool

Методы

  • void закрыть()
  • void открыть()

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

ColorDialog позволяет пользователю выбрать цвет. Диалоговое окно изначально невидимо. Сначала необходимо задать нужные свойства, а затем установить видимый в true или вызвать open().

Вот минимальный пример для открытия диалога выбора цвета и выхода после выбора пользователем цвета:

import QtQuick 2.2
import QtQuick.Dialogs 1.0

ColorDialog {
    id: colorDialog
    title: "Please choose a color"
    onAccepted: {
        console.log("You chose: " + colorDialog.color)
        Qt.quit()
    }
    onRejected: {
        console.log("Canceled")
        Qt.quit()
    }
    Component.onCompleted: visible = true
}

Окно ColorDialog автоматически является временным для своего родительского окна. Поэтому, независимо от того, объявляете ли вы диалог внутри Item или внутри Window, диалог будет отображаться по центру над окном, содержащим элемент, или над окном, которое вы объявили.

Реализация ColorDialog будет платформенным диалоговым окном выбора цвета, если это возможно. Если это невозможно, она попытается создать QColorDialog. Если и это невозможно, она перейдёт к реализации QML, DefaultColorDialog.qml. В этом случае вы можете настроить внешний вид, отредактировав этот файл. DefaultColorDialog.qml содержит прямоугольник для размещения содержимого диалогового окна, потому что некоторые встроенные системы не поддерживают несколько окон верхнего уровня. При отображении диалогового окна оно будет автоматически обернуто в окно, если это возможно, или просто переместится поверх основного окна, если может быть только одно окно.

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

цвет : цвет

Цвет, выбранный пользователем.

Примечание: Этот цвет не всегда совпадает с цветом, содержащимся в свойстве текущийЦвет, так как пользователь может выбрать разные цвета перед окончательным выбором нужного.

См. также текущийЦвет.

текущийЦвет : цвет

Цвет, который пользователь выбрал в данный момент.

Для цвета, установленного при подтверждении диалога, используйте свойство цвет.

См. также цвет.

режим : Qt::WindowModality

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

По умолчанию это Qt.NonModal.

Модальность не означает, что есть какие-либо блокирующие вызовы, ожидающие подтверждения или отклонения диалогового окна; это означает только то, что пользователю будет запрещено взаимодействовать с родительским окном и/или окнами приложения одновременно.

Вероятно, вам понадобится написать обработчик onAccepted, если вы хотите изменить цвет после того, как пользователь нажмёт кнопку «ОК», или обработчик onCurrentColorChanged, если вы хотите отреагировать на каждое изменение, вносимое пользователем во время открытия диалогового окна.

В MacOS диалоговое окно выбора цвета может быть только немодальным.

показатьАльфаКанал : bool

Определяет, будет ли диалоговое окно предоставлять возможность изменения непрозрачности.

По умолчанию это свойство равно true. Это свойство должно быть установлено в нужное значение перед открытием диалогового окна. Обычно альфа-канал представлен дополнительным ползунком.

заголовок : строка

Заголовок окна диалога.

видимый : bool

Это свойство указывает, видимое ли диалоговое окно. По умолчанию оно равно false.

См. также режим.

Документация по методам

void закрыть()

Закрывает диалоговое окно.

void открыть()

Отображает диалоговое окно пользователю. Это эквивалентно установке видимый в true.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qml-qtquick-dialogs-colordialog.html

Spec-Zone.ru

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