Класс QColorDialog
Класс QColorDialog предоставляет виджет диалога для задания цветов. Подробнее...
| Заголовок: | #include <QColorDialog> |
| CMake: | find_package(Qt6 COMPONENTS Widgets REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| Наследует: | QDialog |
Открытые типы
| Перечисление | ColorDialogOption { ShowAlphaChannel, NoButtons, DontUseNativeDialog } |
| Флаги | ColorDialogOptions |
Свойства
- currentColor : QColor
- options : ColorDialogOptions
Открытые функции
| QColorDialog(const QColor &initial, QWidget *parent = nullptr) | |
| QColorDialog(QWidget *parent = nullptr) | |
| виртуальный | ~QColorDialog() |
| QColor | currentColor() const |
| void | open(QObject *receiver, const char *member) |
| QColorDialog::ColorDialogOptions | options() const |
| QColor | selectedColor() const |
| void | setCurrentColor(const QColor &color) |
| void | setOption(QColorDialog::ColorDialogOption option, bool on = true) |
| void | setOptions(QColorDialog::ColorDialogOptions options) |
| bool | testOption(QColorDialog::ColorDialogOption option) const |
Переопределённые открытые функции
| виртуальный void | setVisible(bool visible) override |
Сигналы
| void | colorSelected(const QColor &color) |
| void | currentColorChanged(const QColor &color) |
Статические открытые члены
| QColor | customColor(int index) |
| int | customCount() |
| QColor | getColor(const QColor &initial = Qt::white, QWidget *parent = nullptr, const QString &title = QString(), QColorDialog::ColorDialogOptions options = ColorDialogOptions()) |
| void | setCustomColor(int index, QColor color) |
| void | setStandardColor(int index, QColor color) |
| QColor | standardColor(int index) |
Переопределённые защищённые функции
| виртуальный void | changeEvent(QEvent *e) override |
| виртуальный void | done(int result) override |
Подробное описание
Функция диалога цвета позволяет пользователям выбирать цвета. Например, вы можете использовать его в программе рисования, чтобы позволить пользователю задать цвет кисти.
Статические функции предоставляют модальные диалоги выбора цвета.
Статическая функция getColor() отображает диалог и позволяет пользователю указать цвет. Эта функция также может быть использована для того, чтобы позволить пользователям выбирать цвет с уровнем прозрачности: передайте параметр ShowAlphaChannel в качестве дополнительного аргумента.
Пользователь может сохранить customCount() различных пользовательских цветов. Пользовательские цвета общие для всех диалогов выбора цвета и запоминаются во время выполнения программы. Используйте setCustomColor() для установки пользовательских цветов и используйте customColor() для их получения.
При нажатии на кнопку «Выбрать цвет экрана» курсор меняется на перекрестие, и сканируются цвета на экране. Пользователь может выбрать один, щелкнув мышкой или нажав Enter. Нажатие клавиши Escape восстанавливает последний выбранный цвет перед входом в этот режим.
Пример стандартных диалогов показывает, как использовать QColorDialog, а также другие встроенные диалоги Qt.
См. также QColor, QFileDialog, QFontDialog и Пример стандартных диалогов.
Документация по типам членов
Перечисление QColorDialog::ColorDialogOptionФлаги QColorDialog::ColorDialogOptions
Это перечисление определяет различные параметры, которые влияют на внешний вид диалога выбора цвета.
| Константа | Значение | Описание |
|---|---|---|
QColorDialog::ShowAlphaChannel |
0x00000001 |
Позволяет пользователю выбрать альфа-компонент цвета. |
QColorDialog::NoButtons |
0x00000002 |
Не отображать кнопки «ОК» и «Отмена». (Полезно для «динамических диалогов».) |
QColorDialog::DontUseNativeDialog |
0x00000004 |
Использовать стандартный диалог выбора цвета Qt вместо диалога выбора цвета операционной системы. |
Тип ColorDialogOptions является псевдонимом для QFlags<ColorDialogOption>. Он хранит объединение значений ColorDialogOption.
См. также options, setOption(), testOption() и windowModality().
Документация свойств
currentColor : QColor
Это свойство содержит текущий выбранный цвет в диалоге
Функции доступа:
| QColor | currentColor() const |
| void | setCurrentColor(const QColor &color) |
Сигнал уведомления:
| void | currentColorChanged(const QColor &color) |
options : ColorDialogOptions
Это свойство содержит различные параметры, влияющие на внешний вид диалога
По умолчанию все параметры отключены.
Параметры должны быть установлены перед отображением диалога. Установка их во время видимости диалога не гарантирует немедленного изменения диалога (в зависимости от параметра и платформы).
Функции доступа:
| QColorDialog::ColorDialogOptions | options() const |
| void | setOptions(QColorDialog::ColorDialogOptions options) |
См. также setOption() и testOption().
Документация по членам-функциям
QColorDialog::QColorDialog(const QColor &initial, QWidget *parent = nullptr)
Создаёт диалог выбора цвета с заданным parent и указанным начальным цветом initial.
QColorDialog::QColorDialog(QWidget *parent = nullptr)
Создаёт диалог выбора цвета с заданным parent.
[signal] void QColorDialog::colorSelected(const QColor &color)
Этот сигнал излучается сразу после того, как пользователь нажал кнопку «ОК», чтобы выбрать цвет. Выбранный цвет задаётся параметром color.
См. также color и currentColorChanged().
[signal] void QColorDialog::currentColorChanged(const QColor &color)
Этот сигнал излучается всякий раз, когда текущий цвет изменяется в диалоге. Текущий цвет задаётся параметром color.
Примечание: Сигнал уведомления для свойства currentColor.
См. также color и colorSelected().
[virtual] QColorDialog::~QColorDialog()
Уничтожает диалог выбора цвета.
[override virtual protected] void QColorDialog::changeEvent(QEvent *e)
Переопределяет: QWidget::changeEvent(QEvent *event).
[static] QColor QColorDialog::customColor(int index)
Возвращает пользовательский цвет по заданному index в виде значения QColor.
См. также setCustomColor().
[static] int QColorDialog::customCount()
Возвращает количество поддерживаемых пользовательских цветов QColorDialog. Все диалоги выбора цвета используют одни и те же пользовательские цвета.
[override virtual protected] void QColorDialog::done(int result)
Переопределяет: QDialog::done(int r).
Закрывает диалог и устанавливает его код результата в result. Если этот диалог отображён с помощью exec(), done() завершает локальный цикл событий и exec() возвращает result.
См. также QDialog::done().
[static] QColor QColorDialog::getColor(const QColor &initial = Qt::white, QWidget *parent = nullptr, const QString &title = QString(), QColorDialog::ColorDialogOptions options = ColorDialogOptions())
Выводит модальный диалог выбора цвета с заданным заголовком окна title (или «Выбрать цвет», если не указано), позволяет пользователю выбрать цвет, и возвращает этот цвет. Цвет по умолчанию установлен в initial. Диалог является дочерним элементом parent. Возвращает недопустимый (см. QColor::isValid()) цвет, если пользователь отменяет диалог.
Аргумент options позволяет настроить диалог.
void QColorDialog::open(QObject *receiver, const char *member)
Открывает диалог и подключает его сигнал colorSelected() к слоту, указанному receiver и member.
Сигнал будет отключен от слота при закрытии диалога.
QColor QColorDialog::selectedColor() const
Возвращает цвет, выбранный пользователем, нажав кнопку «ОК» или эквивалентную.
Примечание: Этот цвет не всегда совпадает с цветом, хранящимся в свойстве currentColor, так как пользователь может выбрать разные цвета, прежде чем окончательно выбрать цвет для использования.
[static] void QColorDialog::setCustomColor(int index, QColor color)
Устанавливает пользовательский цвет по index на значение QColor color.
Примечание: Эта функция не применяется к диалогу выбора цвета по умолчанию на платформе macOS. Если вам всё ещё нужна эта функция, используйте параметр QColorDialog::DontUseNativeDialog.
См. также customColor().
void QColorDialog::setOption(QColorDialog::ColorDialogOption option, bool on = true)
Устанавливает заданный параметр option в активное состояние, если on равно true; в противном случае очищает заданный параметр.
См. также options и testOption().
[static] void QColorDialog::setStandardColor(int index, QColor color)
Устанавливает стандартный цвет по index на значение QColor color.
Примечание: Эта функция не применяется к диалогу выбора цвета по умолчанию на платформе macOS. Если вам всё ещё нужна эта функция, используйте параметр QColorDialog::DontUseNativeDialog.
См. также standardColor().
[override virtual] void QColorDialog::setVisible(bool visible)
Переопределяет: QDialog::setVisible(bool visible).
Изменяет видимость диалога. Если visible равно true, диалог отображается; в противном случае он скрывается.
[static, since 5.0] QColor QColorDialog::standardColor(int index)
Возвращает стандартный цвет по заданному index в виде значения QColor.
Функция была добавлена в Qt 5.0.
См. также setStandardColor().
bool QColorDialog::testOption(QColorDialog::ColorDialogOption option) const
Возвращает значение true, если заданный параметр option включён; в противном случае возвращает false.
См. также options и setOption().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qcolordialog.html