Тип QML ColorDialog
Компонент диалога для выбора цвета. Подробнее...
| Заявление об импорте: | import QtQuick.Dialogs 1.3 |
| С момента: | Qt 5.1 |
Свойства
- color : color
- currentColor : color
- modality : Qt::WindowModality
- showAlphaChannel : bool
- title : string
- visible : bool
Методы
Подробное описание
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 : color
Цвет, выбранный пользователем.
Примечание: Этот цвет не всегда совпадает с цветом, хранящимся в свойстве currentColor, поскольку пользователь может выбрать разные цвета, прежде чем окончательно выбрать нужный.
См. также currentColor.
currentColor : color
Цвет, который пользователь выбрал в данный момент.
Для цвета, который устанавливается при принятии диалога, используйте свойство color.
См. также color.
modality : Qt::WindowModality
Определяет, должен ли диалог отображаться в модальном режиме относительно окна, содержащего родительский элемент диалога, модальном режиме относительно всего приложения или в немодальном режиме.
По умолчанию это Qt.NonModal.
Модальность не означает, что есть какие-либо блокирующие вызовы ожидания подтверждения или отклонения диалога; она просто предотвращает взаимодействие пользователя с родительским окном и/или окнами приложения одновременно.
Вероятно, вам нужно написать обработчик onAccepted, если вы хотите изменить цвет после того, как пользователь нажал кнопку «OK», или обработчик onCurrentColorChanged, если вы хотите реагировать на каждое изменение, которое пользователь вносит, пока диалог открыт.
В MacOS диалог выбора цвета разрешается только в немодальном режиме.
showAlphaChannel : bool
Определяет, будет ли диалог предоставлять возможность изменения непрозрачности.
По умолчанию это свойство равно true. Это свойство должно быть установлено в нужное значение перед открытием диалога. Обычно канал альфа представлен дополнительным ползунком.
title : string
Заголовок окна диалога.
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/qt-5.12/qml-qtquick-dialogs-colordialog.html