Sur cette page

ColorDialog QML Type

Une boîte de dialogue de couleurs native. En savoir plus...

Import Statement: import Qt.labs.platform
Inherits:

Dialog

Status: Deprecated since 6.9

Ce type est obsolète depuis Qt Labs Platform 6.9. Nous déconseillons fortement son utilisation dans les nouveaux codes.

Propriétés

Description détaillée

Utilisez plutôt QtQuick.Dialogs ColorDialog.

Le type ColorDialog fournit une API QML pour les boîtes de dialogue de couleurs natives de la plateforme.

Une boîte de dialogue de couleurs native

Pour afficher une boîte de dialogue de couleur, créez une instance de ColorDialog, définissez les propriétés souhaitées, puis appelez la méthode open(). La propriété currentColor permet de déterminer la couleur actuellement sélectionnée dans la boîte de dialogue. La propriété color n’est mise à jour qu’une fois la sélection finale effectuée, c’est-à-dire après avoir validé la boîte de dialogue.

MenuItem {
    text: "Color"
    onTriggered: colorDialog.open()
}

ColorDialog {
    id: colorDialog
    currentColor: document.color
}

MyDocument {
    id: document
    color: colorDialog.color
}

Disponibilité

Une boîte de dialogue de couleurs native est actuellement disponible sur les plateformes suivantes :

  • iOS
  • Linux (lorsqu’il s’exécute avec le thème de la plateforme GTK+)
  • macOS

Le module Qt Labs Platform utilise Qt Widgets comme solution de secours sur les plateformes ne disposant pas d’une implémentation native. Par conséquent, les applications utilisant des types du module Qt Labs Platform doivent être liées à QtWidgets et utiliser QApplication au lieu de QGuiApplication.

Pour lier votre application à la bibliothèque QtWidgets, ajoutez ce qui suit à votre fichier de projet qmake :

QT += widgets

Créez une instance de QApplication dans main():

#include <QApplication>
#include <QQmlApplicationEngine>

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QQmlApplicationEngine engine;
    engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
    return app.exec();
}

Remarque : la compatibilité des types dans les modules Qt.labs n'est pas garantie dans les versions futures.

Voir également QtQuick.Dialogs::ColorDialog.

Documentation sur les propriétés

color : color

Cette propriété contient la couleur finale acceptée.

Contrairement à la propriété « currentColor », la propriété « color » n’est pas mise à jour pendant que l’utilisateur sélectionne des couleurs dans la boîte de dialogue, mais uniquement une fois la sélection finale effectuée. Autrement dit, lorsque l’utilisateur a cliqué sur « OK » pour valider une couleur. Il est également possible de gérer le signal « accepted() » pour obtenir la sélection finale.

Voir également currentColor et accepted().

currentColor : color

Cette propriété contient la couleur actuellement sélectionnée dans la boîte de dialogue.

Contrairement à la propriété « color », la propriété « currentColor » est mise à jour au fur et à mesure que l'utilisateur sélectionne des couleurs dans la boîte de dialogue, avant même que la sélection finale n'ait été effectuée.

Voir également color.

options : flags

Cette propriété regroupe les différentes options qui influent sur l'apparence et le comportement de la boîte de dialogue.

Par défaut, toutes les options sont désactivées.

Les options doivent être définies avant l'affichage de la boîte de dialogue. Leur définition alors que la boîte de dialogue est visible ne garantit pas un effet immédiat sur celle-ci (selon l'option et la plateforme).

Options disponibles :

ConstanteDescription
ColorDialog.ShowAlphaChannelPermet à l'utilisateur de sélectionner la composante alpha d'une couleur.
ColorDialog.NoButtonsNe pas afficher les boutons « OK » et « Cancel » (utile pour les « boîtes de dialogue en temps réel »).

© 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.