QColorDialog Class
La clase QColorDialog proporciona un widget de diálogo para especificar colores. Más...
| Cabecera: | #include <QColorDialog> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets)target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| Hereda: | QDialog |
- Lista de todos los miembros, incluyendo los heredados
- QColorDialog es parte de Standard Dialogs.
Tipos Públicos
| enum | ColorDialogOption { ShowAlphaChannel, NoButtons, NoEyeDropperButton, DontUseNativeDialog } |
| flags | ColorDialogOptions |
Propiedades
- currentColor : QColor
- options : ColorDialogOptions
Funciones públicas
| QColorDialog(QWidget *parent = nullptr) | |
| QColorDialog(const QColor &initial, QWidget *parent = nullptr) | |
| virtual | ~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 |
Funciones públicas reimplementadas
| virtual void | setVisible(bool visible) override |
Señales
| void | colorSelected(const QColor &color) |
| void | currentColorChanged(const QColor &color) |
Miembros públicos estáticos
| 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) |
Funciones protegidas reimplementadas
| virtual void | changeEvent(QEvent *e) override |
| virtual void | done(int result) override |
Descripción Detallada
La función del diálogo de color es permitir a los usuarios elegir colores. Por ejemplo, se puede utilizar en un programa de dibujo para permitir al usuario establecer el color del pincel.
Las funciones estáticas proporcionan diálogos de color modales.
La función estática getColor() muestra el diálogo, y permite al usuario especificar un color. Esta función también puede utilizarse para permitir a los usuarios elegir un color con un nivel de transparencia: pase la opción ShowAlphaChannel como argumento adicional.
El usuario puede almacenar customCount() diferentes colores personalizados. Los colores personalizados son compartidos por todos los diálogos de color, y recordados durante la ejecución del programa. Utilice setCustomColor() para establecer los colores personalizados, y utilice customColor() para obtenerlos.
Al pulsar el botón "Elegir color de pantalla", el cursor cambia a una cruz de pelo y se escanean los colores de la pantalla. El usuario puede elegir uno pulsando el ratón o el botón Intro. Pulsando Escape se restaura el último color seleccionado antes de entrar en este modo.
El ejemplo de Diálogos Estándar muestra cómo utilizar QColorDialog así como otros diálogos Qt incorporados.

Ver también QColor, QFileDialog, QFontDialog, y Ejemplo de Diálogos Estándar.
Documentación de Tipos de Miembros
enum QColorDialog::ColorDialogOption
flags QColorDialog::ColorDialogOptions
Este enum especifica varias opciones que afectan al aspecto de un diálogo de color.
| Constante | Valor | Descripción |
|---|---|---|
QColorDialog::ShowAlphaChannel | 0x00000001 | Permite al usuario seleccionar el componente alfa de un color. |
QColorDialog::NoButtons | 0x00000002 | No mostrar los botones OK y Cancel. (Útil para "diálogos en vivo"). |
QColorDialog::NoEyeDropperButton | 0x00000008 | Ocultar el botón Eye Dropper. Este valor se añadió en Qt 6.6. |
QColorDialog::DontUseNativeDialog | 0x00000004 | Usar el diálogo de color estándar de Qt en lugar del diálogo de color nativo del sistema operativo. |
El tipo ColorDialogOptions es un typedef para QFlags<ColorDialogOption>. Almacena una combinación OR de valores ColorDialogOption.
Ver también options, setOption(), testOption(), y windowModality().
Documentación de Propiedades
currentColor : QColor
Esta propiedad contiene el color actualmente seleccionado en el diálogo
Funciones de acceso:
| QColor | currentColor() const |
| void | setCurrentColor(const QColor &color) |
Señal del notificador:
| void | currentColorChanged(const QColor &color) |
options : ColorDialogOptions
Esta propiedad contiene las distintas opciones que afectan al aspecto del cuadro de diálogo
Por defecto, todas las opciones están desactivadas.
Las opciones deben establecerse antes de mostrar el diálogo. Establecerlas mientras el diálogo está visible no garantiza que tenga un efecto inmediato en el diálogo (dependiendo de la opción y de la plataforma).
Funciones de acceso:
| QColorDialog::ColorDialogOptions | options() const |
| void | setOptions(QColorDialog::ColorDialogOptions options) |
Véase también setOption() y testOption().
Documentación de las funciones miembro
[explicit] QColorDialog::QColorDialog(QWidget *parent = nullptr)
Construye un diálogo de color con la dirección parent.
[explicit] QColorDialog::QColorDialog(const QColor &initial, QWidget *parent = nullptr)
Construye un diálogo de color con el parent dado y el color initial especificado.
[virtual noexcept] QColorDialog::~QColorDialog()
Destruye el diálogo de color.
[override virtual protected] void QColorDialog::changeEvent(QEvent *e)
Reimplementa: QWidget::changeEvent(QEvent *event).
[signal] void QColorDialog::colorSelected(const QColor &color)
Esta señal se emite justo después de que el usuario haya pulsado OK para seleccionar un color a utilizar. El color elegido se especifica en color.
Véase también color y currentColorChanged().
[signal] void QColorDialog::currentColorChanged(const QColor &color)
Esta señal se emite cada vez que cambia el color actual en el diálogo. El color actual se especifica en color.
Nota: Señal notificadora para la propiedad currentColor.
Véase también color y colorSelected().
[static] QColor QColorDialog::customColor(int index)
Devuelve el color personalizado en el index dado como un valor QColor.
Véase también setCustomColor().
[static] int QColorDialog::customCount()
Devuelve el número de colores personalizados que admite QColorDialog. Todos los diálogos de color comparten los mismos colores personalizados.
[override virtual protected] void QColorDialog::done(int result)
Reimplementa: QDialog::done(int r).
Cierra el diálogo y establece su código de resultado a result. Si este diálogo se muestra con exec(), done() hace que el bucle de eventos local termine, y exec() devuelva result.
Véase también QDialog::done().
[static] QColor QColorDialog::getColor(const QColor &initial = Qt::white, QWidget *parent = nullptr, const QString &title = QString(), QColorDialog::ColorDialogOptions options = ColorDialogOptions())
Abre un diálogo modal de color con la ventana dada title (o "Seleccionar color" si no se especifica ninguno), permite al usuario elegir un color y devuelve ese color. El color se establece inicialmente en initial. El diálogo es hijo de parent. Devuelve un color no válido (véase QColor::isValid()) si el usuario cancela el diálogo.
El argumento options permite personalizar el diálogo.
void QColorDialog::open(QObject *receiver, const char *member)
Abre el diálogo y conecta su señal colorSelected() a la ranura especificada por receiver y member.
La señal se desconectará de la ranura cuando se cierre el diálogo.
QColor QColorDialog::selectedColor() const
Devuelve el color que el usuario seleccionó al pulsar el botón OK o equivalente.
Nota: Este color no es siempre el mismo que el color mantenido por la propiedad currentColor ya que el usuario puede elegir diferentes colores antes de seleccionar finalmente el que va a utilizar.
[static] void QColorDialog::setCustomColor(int index, QColor color)
Establece el color personalizado en index al valor de QColor color .
Nota: Esta función no se aplica al Diálogo de color nativo en la plataforma macOS. Si aún necesita esta función, utilice la opción QColorDialog::DontUseNativeDialog.
Véase también customColor().
void QColorDialog::setOption(QColorDialog::ColorDialogOption option, bool on = true)
Establece el option dado para que esté habilitado si on es verdadero; de lo contrario, borra el option dado.
Véase también options y testOption().
[static] void QColorDialog::setStandardColor(int index, QColor color)
Establece el color estándar en index al valor QColor color .
Nota: Esta función no se aplica al Diálogo de color nativo en la plataforma macOS. Si aún así necesita esta función, utilice la opción QColorDialog::DontUseNativeDialog.
Véase también standardColor().
[override virtual] void QColorDialog::setVisible(bool visible)
Reimplementa: QDialog::setVisible(bool visible).
Cambia la visibilidad del diálogo. Si visible es verdadero, el diálogo se muestra; en caso contrario, se oculta.
[static] QColor QColorDialog::standardColor(int index)
Devuelve el color estándar en el index dado como un valor QColor.
Véase también setStandardColor().
bool QColorDialog::testOption(QColorDialog::ColorDialogOption option) const
Devuelve true si el option dado está habilitado; en caso contrario, devuelve false.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.