Spec-Zone.ru › Qt 5.6

Тип QML ColorDialog

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

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

Свойства

  • color : цвет
  • currentColor : цвет
  • modality : Qt::WindowModality
  • showAlphaChannel : bool
  • title : строка
  • visible : bool

Методы

  • void close()
  • void open()

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

ColorDialog позволяет пользователю выбрать цвет. Диалог изначально невидим. Сначала необходимо установить необходимые свойства, а затем установить visible в значение 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 содержит прямоугольник для размещения содержимого диалога, потому что некоторые встраиваемые системы не поддерживают несколько окон верхнего уровня. Когда диалог становится видимым, он автоматически будет заключён в окно, если это возможно, или просто будет переродитель внутри главного окна, если может быть только одно окно.

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

color : цвет

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

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

См. также currentColor.

currentColor : цвет

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

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

См. также color.

modality : Qt::WindowModality

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

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

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

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

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

showAlphaChannel : bool

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

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

title : строка

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

visible : bool

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

См. также modality.

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

void close()

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

void open()

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

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

Spec-Zone.ru

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