Класс 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()
Возвращает количество поддерживаемых пользовательских цветов диалогом выбора цвета. Все диалоги выбора цвета используют одни и те же пользовательские цвета.
[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; в противном случае очищает заданный option.
См. также параметры и 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.
См. также параметры и setOption().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qcolordialog.html