QColorDialog Class
Die Klasse „QColorDialog“ stellt ein Dialog-Widget zur Festlegung von Farben bereit. Mehr...
| Header: | #include <QColorDialog> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| Erbt von: | QDialog |
- Liste aller Mitglieder, einschließlich geerbter Mitglieder
- QColorDialog ist Teil von „Standarddialoge“.
Öffentliche Typen
| enum | ColorDialogOption { ShowAlphaChannel, NoButtons, NoEyeDropperButton, DontUseNativeDialog } |
| flags | ColorDialogOptions |
Eigenschaften
- currentColor : QColor
- options : ColorDialogOptions
Öffentliche Funktionen
| 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 |
Neu implementierte öffentliche Funktionen
| virtual void | setVisible(bool visible) override |
Signale
| void | colorSelected(const QColor &color) |
| void | currentColorChanged(const QColor &color) |
Statische öffentliche Mitglieder
| 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) |
Neu implementierte geschützte Funktionen
| virtual void | changeEvent(QEvent *e) override |
| virtual void | done(int result) override |
Ausführliche Beschreibung
Die Funktion des Farbdialogs besteht darin, Benutzern die Auswahl von Farben zu ermöglichen. Sie können dies beispielsweise in einem Zeichenprogramm verwenden, um dem Benutzer die Einstellung der Pinselfarbe zu ermöglichen.
Die statischen Funktionen stellen modale Farbdialoge bereit.
Die statische Funktion ` getColor()` zeigt den Dialog an und ermöglicht es dem Benutzer, eine Farbe festzulegen. Diese Funktion kann auch verwendet werden, um Benutzern die Auswahl einer Farbe mit einem Transparenzgrad zu ermöglichen: Übergeben Sie dazu die Option ` ShowAlphaChannel ` als zusätzliches Argument.
Der Benutzer kann mit ` customCount()` verschiedene benutzerdefinierte Farben speichern. Die benutzerdefinierten Farben werden von allen Farbdialogen gemeinsam genutzt und während der Ausführung des Programms beibehalten. Verwenden Sie ` setCustomColor()`, um die benutzerdefinierten Farben festzulegen, und ` customColor()`, um sie abzurufen.
Beim Klicken auf die Schaltfläche „Bildschirmfarbe auswählen“ verwandelt sich der Cursor in ein Fadenkreuz, und die Farben auf dem Bildschirm werden abgetastet. Der Benutzer kann eine Farbe durch Klicken mit der Maus oder durch Drücken der Eingabetaste auswählen. Durch Drücken der Escape-Taste wird die zuletzt vor dem Aufrufen dieses Modus ausgewählte Farbe wiederhergestellt.
Das Beispiel „Standard Dialogs“ zeigt, wie man QColorDialog sowie andere integrierte Qt-Dialoge verwendet.

Siehe auch QColor, QFileDialog, QFontDialog sowie das Beispiel „Standard Dialogs“.
Dokumentation zu den Mitgliedstypen
enum QColorDialog::ColorDialogOption
flags QColorDialog::ColorDialogOptions
Diese Enumeration legt verschiedene Optionen fest, die das Erscheinungsbild eines Farbdialogs beeinflussen.
| Konstante | Wert | Beschreibung |
|---|---|---|
QColorDialog::ShowAlphaChannel | 0x00000001 | Ermöglicht dem Benutzer die Auswahl der Alpha-Komponente einer Farbe. |
QColorDialog::NoButtons | 0x00000002 | Die Schaltflächen „ OK “ und „ Cancel “ werden nicht angezeigt. (Nützlich für „Live-Dialoge“.) |
QColorDialog::NoEyeDropperButton | 0x00000008 | Die Schaltfläche „ Eye Dropper “ ausblenden. Dieser Wert wurde in Qt 6.6 hinzugefügt. |
QColorDialog::DontUseNativeDialog | 0x00000004 | Verwenden Sie den Standard-Farbdialog von Qt anstelle des nativen Farbdialogs des Betriebssystems. |
Der Typ „ColorDialogOptions“ ist ein „typedef“ für „QFlags<ColorDialogOption>“. Er speichert eine OR-Kombination von „ColorDialogOption“-Werten.
Siehe auch „ options“ , „ setOption()“, „ testOption()“ und „ windowModality()“.
Dokumentation zur Eigenschaft
currentColor : QColor
Diese Eigenschaft enthält die aktuell im Dialogfeld ausgewählte Farbe
Zugriffsfunktionen:
| QColor | currentColor() const |
| void | setCurrentColor(const QColor &color) |
Benachrichtigungssignal:
| void | currentColorChanged(const QColor &color) |
options : ColorDialogOptions
Diese Eigenschaft enthält die verschiedenen Optionen, die das Erscheinungsbild des Dialogfelds beeinflussen
Standardmäßig sind alle Optionen deaktiviert.
Die Optionen sollten vor dem Anzeigen des Dialogfelds festgelegt werden. Es ist nicht garantiert, dass das Festlegen der Optionen bei sichtbarem Dialogfeld sofort Auswirkungen auf das Dialogfeld hat (abhängig von der Option und der Plattform).
Zugriffsfunktionen:
| QColorDialog::ColorDialogOptions | options() const |
| void | setOptions(QColorDialog::ColorDialogOptions options) |
Siehe auch setOption() und testOption().
Dokumentation zu den Mitgliedsfunktionen
[explicit] QColorDialog::QColorDialog(QWidget *parent = nullptr)
Erstellt einen Farbdialog mit dem angegebenen „ parent “.
[explicit] QColorDialog::QColorDialog(const QColor &initial, QWidget *parent = nullptr)
Erzeugt einen Farbdialog mit dem angegebenen „ parent “ und der angegebenen Farbe „ initial “.
[virtual noexcept] QColorDialog::~QColorDialog()
Schließt den Farbdialog.
[override virtual protected] void QColorDialog::changeEvent(QEvent *e)
Umsetzt: ` QWidget::changeEvent(QEvent *event)`.
[signal] void QColorDialog::colorSelected(const QColor &color)
Dieses Signal wird ausgelöst, sobald der Benutzer auf „ OK “ geklickt hat, um eine Farbe auszuwählen. Die ausgewählte Farbe wird durch „ color “ angegeben.
Siehe auch „color“ und „ currentColorChanged()“.
[signal] void QColorDialog::currentColorChanged(const QColor &color)
Dieses Signal wird immer dann ausgelöst, wenn sich die aktuelle Farbe im Dialogfeld ändert. Die aktuelle Farbe wird durch „ color “ festgelegt.
Hinweis: Notifier -Signal für die Eigenschaft ` currentColor`.
Siehe auch „color“ und „ colorSelected()“.
[static] QColor QColorDialog::customColor(int index)
Gibt die benutzerdefinierte Farbe unter der angegebenen Adresse „ index “ als Wert vom Typ „ QColor “ zurück.
Siehe auch setCustomColor().
[static] int QColorDialog::customCount()
Gibt die Anzahl der von QColorDialog unterstützten benutzerdefinierten Farben zurück. Alle Farbdialoge verwenden dieselben benutzerdefinierten Farben.
[override virtual protected] void QColorDialog::done(int result)
Implementiert: ` QDialog::done(int r)`.
Schließt den Dialog und setzt dessen Ergebniscode auf „ result “. Wenn dieser Dialog mit „ exec()“ angezeigt wurde, bewirkt „done()“, dass die lokale Ereignisschleife beendet wird und „ exec()“ den Wert „ result “ zurückgibt.
Siehe auch „ QDialog::done()“.
[static] QColor QColorDialog::getColor(const QColor &initial = Qt::white, QWidget *parent = nullptr, const QString &title = QString(), QColorDialog::ColorDialogOptions options = ColorDialogOptions())
Öffnet einen modalen Farbdialog mit dem angegebenen Fenster- title (oder „Farbe auswählen“, falls kein angegeben ist), lässt den Benutzer eine Farbe auswählen und gibt diese Farbe zurück. Die Farbe ist zunächst auf initial gesetzt. Der Dialog ist ein untergeordnetes Element von parent. Er gibt eine ungültige Farbe (siehe QColor::isValid()) zurück, wenn der Benutzer den Dialog abbricht.
Mit dem Argument „ options “ können Sie den Dialog anpassen.
void QColorDialog::open(QObject *receiver, const char *member)
Öffnet das Dialogfeld und verbindet dessen Signal „ colorSelected()“ mit dem Slot, der durch „ receiver “ und „ member “ angegeben wird.
Das Signal wird vom Slot getrennt, sobald das Dialogfeld geschlossen wird.
QColor QColorDialog::selectedColor() const
Gibt die Farbe zurück, die der Benutzer durch Klicken auf die Schaltfläche „ OK “ oder eine entsprechende Schaltfläche ausgewählt hat.
Hinweis: Diese Farbe entspricht nicht immer der Farbe, die in der Eigenschaft „ currentColor “ gespeichert ist, da der Benutzer verschiedene Farben auswählen kann, bevor er sich endgültig für eine entscheidet.
[static] void QColorDialog::setCustomColor(int index, QColor color)
Setzt die benutzerdefinierte Farbe unter „ index “ auf den Wert „ QColor “ color.
Hinweis: Diese Funktion gilt nicht für den nativen Farbdialog auf der macOS-Plattform. Wenn Sie diese Funktion dennoch benötigen, verwenden Sie die Option „ QColorDialog::DontUseNativeDialog “.
Siehe auch „ customColor()“.
void QColorDialog::setOption(QColorDialog::ColorDialogOption option, bool on = true)
Setzt die angegebene Eigenschaft „ option “ auf „enabled“, wenn „ on “ den Wert „true“ hat; andernfalls wird die angegebene Eigenschaft „ option “ zurückgesetzt.
Siehe auch „ options “ und „ testOption()“.
[static] void QColorDialog::setStandardColor(int index, QColor color)
Setzt die Standardfarbe unter „ index “ auf den Wert „ QColor “ color.
Hinweis: Diese Funktion gilt nicht für den nativen Farbdialog auf der macOS-Plattform. Wenn Sie diese Funktion dennoch benötigen, verwenden Sie die Option „ QColorDialog::DontUseNativeDialog “.
Siehe auch standardColor().
[override virtual] void QColorDialog::setVisible(bool visible)
Implementiert: ` QDialog::setVisible` (bool visible).
Ändert die Sichtbarkeit des Dialogfelds. Ist visible wahr, wird das Dialogfeld angezeigt; andernfalls wird es ausgeblendet.
[static] QColor QColorDialog::standardColor(int index)
Gibt die Standardfarbe an der angegebenen Koordinate ` index ` als Wert vom Typ ` QColor ` zurück.
Siehe auch setStandardColor().
bool QColorDialog::testOption(QColorDialog::ColorDialogOption option) const
Gibt „ true “ zurück, wenn die angegebene Funktion „ option “ aktiviert ist; andernfalls wird „false“ zurückgegeben.
© 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.