Q3DTheme Class
Die Klasse „Q3DTheme“ stellt einen visuellen Stil für Diagramme bereit. Mehr...
| Kopfzeile: | #include <Q3DTheme> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS DataVisualization) target_link_libraries(mytarget PRIVATE Qt6::DataVisualization) |
| qmake: | QT += datavisualization |
| Seit: | QtDataVisualization 1.0 |
| In QML: | Theme3D |
| Erbt von: | QObject |
| Status: | Veraltet |
Diese Klasse ist veraltet. Wir raten dringend davon ab, sie in neuem Code zu verwenden.
Öffentliche Typen
| enum | ColorStyle { ColorStyleUniform, ColorStyleObjectGradient, ColorStyleRangeGradient } |
| enum | Theme { ThemeQt, ThemePrimaryColors, ThemeDigia, ThemeStoneMoss, ThemeArmyBlue, …, ThemeUserDefined } |
Eigenschaften
|
|
Öffentliche Funktionen
| Q3DTheme(QObject *parent = nullptr) | |
| Q3DTheme(Q3DTheme::Theme themeType, QObject *parent = nullptr) | |
| virtual | ~Q3DTheme() |
| float | ambientLightStrength() const |
| QColor | backgroundColor() const |
| QList<QColor> | baseColors() const |
| QList<QLinearGradient> | baseGradients() const |
| Q3DTheme::ColorStyle | colorStyle() const |
| QFont | font() const |
| QColor | gridLineColor() const |
| float | highlightLightStrength() const |
| bool | isBackgroundEnabled() const |
| bool | isGridEnabled() const |
| bool | isLabelBackgroundEnabled() const |
| bool | isLabelBorderEnabled() const |
| QColor | labelBackgroundColor() const |
| QColor | labelTextColor() const |
| QColor | lightColor() const |
| float | lightStrength() const |
| QColor | multiHighlightColor() const |
| QLinearGradient | multiHighlightGradient() const |
| void | setAmbientLightStrength(float strength) |
| void | setBackgroundColor(const QColor &color) |
| void | setBackgroundEnabled(bool enabled) |
| void | setBaseColors(const QList<QColor> &colors) |
| void | setBaseGradients(const QList<QLinearGradient> &gradients) |
| void | setColorStyle(Q3DTheme::ColorStyle style) |
| void | setFont(const QFont &font) |
| void | setGridEnabled(bool enabled) |
| void | setGridLineColor(const QColor &color) |
| void | setHighlightLightStrength(float strength) |
| void | setLabelBackgroundColor(const QColor &color) |
| void | setLabelBackgroundEnabled(bool enabled) |
| void | setLabelBorderEnabled(bool enabled) |
| void | setLabelTextColor(const QColor &color) |
| void | setLightColor(const QColor &color) |
| void | setLightStrength(float strength) |
| void | setMultiHighlightColor(const QColor &color) |
| void | setMultiHighlightGradient(const QLinearGradient &gradient) |
| void | setSingleHighlightColor(const QColor &color) |
| void | setSingleHighlightGradient(const QLinearGradient &gradient) |
| void | setType(Q3DTheme::Theme themeType) |
| void | setWindowColor(const QColor &color) |
| QColor | singleHighlightColor() const |
| QLinearGradient | singleHighlightGradient() const |
| Q3DTheme::Theme | type() const |
| QColor | windowColor() const |
Signale
| void | ambientLightStrengthChanged(float strength) |
| void | backgroundColorChanged(const QColor &color) |
| void | backgroundEnabledChanged(bool enabled) |
| void | baseColorsChanged(const QList<QColor> &colors) |
| void | baseGradientsChanged(const QList<QLinearGradient> &gradients) |
| void | colorStyleChanged(Q3DTheme::ColorStyle style) |
| void | fontChanged(const QFont &font) |
| void | gridEnabledChanged(bool enabled) |
| void | gridLineColorChanged(const QColor &color) |
| void | highlightLightStrengthChanged(float strength) |
| void | labelBackgroundColorChanged(const QColor &color) |
| void | labelBackgroundEnabledChanged(bool enabled) |
| void | labelBorderEnabledChanged(bool enabled) |
| void | labelTextColorChanged(const QColor &color) |
| void | lightColorChanged(const QColor &color) |
| void | lightStrengthChanged(float strength) |
| void | multiHighlightColorChanged(const QColor &color) |
| void | multiHighlightGradientChanged(const QLinearGradient &gradient) |
| void | singleHighlightColorChanged(const QColor &color) |
| void | singleHighlightGradientChanged(const QLinearGradient &gradient) |
| void | typeChanged(Q3DTheme::Theme themeType) |
| void | windowColorChanged(const QColor &color) |
Detaillierte Beschreibung
Legt visuelle Eigenschaften fest, die sich auf das gesamte Diagramm auswirken. Es gibt mehrere integrierte Designs, die unverändert verwendet oder frei angepasst werden können.
Die folgenden Eigenschaften können überschrieben werden, indem die Eigenschaften „ QAbstract3DSeries “ verwendet werden, um sie in der Reihe explizit festzulegen: „ baseColors “, „ baseGradients “ und „ colorStyle “.
Themen können mithilfe des Enum-Werts „ ThemeUserDefined “ von Grund auf neu erstellt werden. Das Erstellen eines Themas mit dem Standardkonstruktor erzeugt ein neues benutzerdefiniertes Thema.
Standardthema
Die folgende Tabelle listet die von Themen gesteuerten Eigenschaften sowie die Standardwerte für „ ThemeUserDefined “ auf.
| Eigenschaft | Standardwert |
|---|---|
| ambientLightStrength | 0,25 |
| backgroundColor | Qt::black |
| backgroundEnabled | true |
| baseColors | Qt::black |
| baseGradients | QLinearGradient. Im Wesentlichen vollständig schwarz. |
| colorStyle | ColorStyleUniform |
| font | QFont |
| gridEnabled | true |
| gridLineColor | Qt::white |
| highlightLightStrength | 7,5 |
| labelBackgroundColor | Qt::gray |
| labelBackgroundEnabled | true |
| labelBorderEnabled | true |
| labelTextColor | Qt::white |
| lightColor | Qt::white |
| lightStrength | 5,0 |
| multiHighlightColor | Qt::blue |
| multiHighlightGradient | QLinearGradient. Im Wesentlichen vollständig schwarz. |
| singleHighlightColor | Qt::red |
| singleHighlightGradient | QLinearGradient. Im Wesentlichen vollständig schwarz. |
| windowColor | Qt::black |
Anwendungsbeispiele
Erstellen eines integrierten Themes ohne Änderungen:
Erstellen eines integrierten Themes und Anpassen einiger Eigenschaften:
Q3DTheme *theme = new Q3DTheme(Q3DTheme::ThemeQt);
theme->setBackgroundEnabled(false);
theme->setLabelBackgroundEnabled(false);Erstellen eines benutzerdefinierten Designs:
Q3DTheme *theme = new Q3DTheme();
theme->setAmbientLightStrength(0.3f);
theme->setBackgroundColor(QColor(QRgb(0x99ca53)));
theme->setBackgroundEnabled(true);
theme->setBaseColor(QColor(QRgb(0x209fdf)));
theme->setColorStyle(Q3DTheme::ColorStyleUniform);
theme->setFont(QFont(QStringLiteral("Impact"), 35));
theme->setGridEnabled(true);
theme->setGridLineColor(QColor(QRgb(0x99ca53)));
theme->setHighlightLightStrength(7.0f);
theme->setLabelBackgroundColor(QColor(0xf6, 0xa6, 0x25, 0xa0));
theme->setLabelBackgroundEnabled(true);
theme->setLabelBorderEnabled(true);
theme->setLabelTextColor(QColor(QRgb(0x404044)));
theme->setLightColor(Qt::white);
theme->setLightStrength(6.0f);
theme->setMultiHighlightColor(QColor(QRgb(0x6d5fd5)));
theme->setSingleHighlightColor(QColor(QRgb(0xf6a625)));
theme->setWindowColor(QColor(QRgb(0xffffff)));Erstellen eines integrierten Designs und Anpassen einiger Eigenschaften, nachdem es festgelegt wurde:
Dokumentation zu Mitgliedstypen
enum Q3DTheme::ColorStyle
Farbstile.
| Konstante | Wert | Beschreibung |
|---|---|---|
Q3DTheme::ColorStyleUniform | 0 | Objekte werden in einer einzigen Farbe dargestellt. Die verwendete Farbe wird in den Eigenschaften „ baseColors “, „ singleHighlightColor “ und „ multiHighlightColor “ festgelegt. |
Q3DTheme::ColorStyleObjectGradient | 1 | Objekte werden unabhängig von ihrer Höhe mit einem vollständigen Farbverlauf eingefärbt. Der verwendete Farbverlauf wird in den Eigenschaften „ baseGradients “, „ singleHighlightGradient “ und „ multiHighlightGradient “ festgelegt. |
Q3DTheme::ColorStyleRangeGradient | 2 | Objekte werden mit einem Teil des vollständigen Farbverlaufs eingefärbt, der durch die Höhe des Objekts und dessen Position auf der Y-Achse bestimmt wird. Der verwendete Farbverlauf wird in den Eigenschaften „ baseGradients “, „ singleHighlightGradient “ und „ multiHighlightGradient “ festgelegt. |
enum Q3DTheme::Theme
Integrierte Designs.
| Konstante | Wert | Beschreibung |
|---|---|---|
Q3DTheme::ThemeQt | 0 | Ein helles Design mit Grün als Grundfarbe. |
Q3DTheme::ThemePrimaryColors | 1 | Ein helles Design mit Gelb als Grundfarbe. |
Q3DTheme::ThemeDigia | 2 | Ein helles Design mit Grau als Grundfarbe. |
Q3DTheme::ThemeStoneMoss | 3 | Ein mittel-dunkles Design mit Gelb als Grundfarbe. |
Q3DTheme::ThemeArmyBlue | 4 | Ein mittelhelles Design mit Blau als Grundfarbe. |
Q3DTheme::ThemeRetro | 5 | Ein mittelhelles Design mit Braun als Grundfarbe. |
Q3DTheme::ThemeEbony | 6 | Ein dunkles Design mit Weiß als Grundfarbe. |
Q3DTheme::ThemeIsabelle | 7 | Ein dunkles Design mit Gelb als Grundfarbe. |
Q3DTheme::ThemeUserDefined | 8 | Ein benutzerdefiniertes Design. Weitere Informationen finden Sie unter Default Theme. |
Dokumentation zu den Eigenschaften
ambientLightStrength : float
Diese Eigenschaft legt die Umgebungshelligkeit für das gesamte Diagramm fest.
Dieser Wert bestimmt, wie gleichmäßig und hell die Farben im gesamten Diagramm dargestellt werden, unabhängig von der Position der Lichtquelle.
Der Wert muss zwischen 0.0f und 1.0f liegen.
Zugriffsfunktionen:
| float | ambientLightStrength() const |
| void | setAmbientLightStrength(float strength) |
Benachrichtigungssignal:
| void | ambientLightStrengthChanged(float strength) |
backgroundColor : QColor
Diese Eigenschaft legt die Farbe des Diagrammhintergrunds fest.
Zugriffsfunktionen:
| QColor | backgroundColor() const |
| void | setBackgroundColor(const QColor &color) |
Notifier-Signal:
| void | backgroundColorChanged(const QColor &color) |
backgroundEnabled : bool
Diese Eigenschaft gibt an, ob der Hintergrund sichtbar ist.
Der Hintergrund wird unter Verwendung des Werts von „ backgroundColor “ gezeichnet.
Zugriffsfunktionen:
| bool | isBackgroundEnabled() const |
| void | setBackgroundEnabled(bool enabled) |
Notifier-Signal:
| void | backgroundEnabledChanged(bool enabled) |
baseColors : QList<QColor>
Diese Eigenschaft enthält die Liste der Grundfarben, die für alle Objekte im Diagramm verwendet werden sollen, und zwar Reihe für Reihe.
Wenn es mehr Reihen als Farben gibt, wird die Farbliste umgebrochen und beginnt erneut mit der ersten Farbe in der Liste.
Hat keine unmittelbare Wirkung, wenn „ colorStyle “ nicht auf „ ColorStyleUniform “ gesetzt ist.
Dieser Wert kann überschrieben werden, indem „ baseColor “ in der jeweiligen Reihe explizit festgelegt wird.
Zugriffsfunktionen:
| QList<QColor> | baseColors() const |
| void | setBaseColors(const QList<QColor> &colors) |
Benachrichtigungssignal:
| void | baseColorsChanged(const QList<QColor> &colors) |
baseGradients : QList<QLinearGradient>
Diese Eigenschaft enthält die Liste der Basisverläufe, die für alle Objekte im Diagramm verwendet werden sollen, und zwar Reihe für Reihe.
Wenn es mehr Reihen als Farbverläufe gibt, wird die Farbverlaufsliste umgebrochen und beginnt erneut mit dem ersten Farbverlauf in der Liste
Hat keine unmittelbare Auswirkung, wenn „ colorStyle “ auf „ ColorStyleUniform “ gesetzt ist.
Dieser Wert kann überschrieben werden, indem „ baseGradient “ in der jeweiligen Reihe explizit festgelegt wird.
Zugriffsfunktionen:
| QList<QLinearGradient> | baseGradients() const |
| void | setBaseGradients(const QList<QLinearGradient> &gradients) |
Benachrichtigungssignal:
| void | baseGradientsChanged(const QList<QLinearGradient> &gradients) |
colorStyle : ColorStyle
Diese Eigenschaft legt den Stil der Diagrammfarben fest.
Einer der Werte der Aufzählung „ ColorStyle “.
Dieser Wert kann überschrieben werden, indem „ colorStyle “ in der Reihe explizit festgelegt wird.
Zugriffsfunktionen:
| Q3DTheme::ColorStyle | colorStyle() const |
| void | setColorStyle(Q3DTheme::ColorStyle style) |
Benachrichtigungssignal:
| void | colorStyleChanged(Q3DTheme::ColorStyle style) |
font : QFont
Diese Eigenschaft legt die Schriftart fest, die für Beschriftungen verwendet werden soll.
Zugriffsfunktionen:
| QFont | font() const |
| void | setFont(const QFont &font) |
Benachrichtigungssignal:
| void | fontChanged(const QFont &font) |
gridEnabled : bool
Diese Eigenschaft legt fest, ob die Gitterlinien gezeichnet werden.
Dieser Wert wirkt sich auf alle Gitterlinien aus.
Zugriffsfunktionen:
| bool | isGridEnabled() const |
| void | setGridEnabled(bool enabled) |
Benachrichtigungssignal:
| void | gridEnabledChanged(bool enabled) |
gridLineColor : QColor
Diese Eigenschaft legt die Farbe der Rasterlinien fest.
Hinweis: Transparenz wird nicht unterstützt und führt zu undefiniertem Verhalten.
Zugriffsfunktionen:
| QColor | gridLineColor() const |
| void | setGridLineColor(const QColor &color) |
Notifier-Signal:
| void | gridLineColorChanged(const QColor &color) |
highlightLightStrength : float
Diese Eigenschaft enthält die Stärke des Spiegelungslichts für ausgewählte Objekte.
Der Wert muss zwischen 0.0f und 10.0f liegen.
Zugriffsfunktionen:
| float | highlightLightStrength() const |
| void | setHighlightLightStrength(float strength) |
Benachrichtigungssignal:
| void | highlightLightStrengthChanged(float strength) |
labelBackgroundColor : QColor
Diese Eigenschaft legt die Farbe des Hintergrunds der Beschriftungen fest.
Hat keine Auswirkung, wenn „ labelBackgroundEnabled “ auf „ false “ gesetzt ist.
Zugriffsfunktionen:
| QColor | labelBackgroundColor() const |
| void | setLabelBackgroundColor(const QColor &color) |
Notifier-Signal:
| void | labelBackgroundColorChanged(const QColor &color) |
labelBackgroundEnabled : bool
Diese Eigenschaft gilt unabhängig davon, ob die Beschriftung mit einem farbigen Hintergrund oder mit einem vollständig transparenten Hintergrund gezeichnet wird.
Für die Darstellung des Hintergrunds wird der Wert „ labelBackgroundColor “ (einschließlich Alpha) verwendet.
Beschriftungen mit Hintergrund werden je nach Achse in der Größe der längsten Beschriftung dargestellt, und der Text wird darin zentriert. Beschriftungen ohne Hintergrund werden unverändert dargestellt und je nach ihrer Position im Diagramm links- oder rechtsbündig ausgerichtet.
Zugriffsfunktionen:
| bool | isLabelBackgroundEnabled() const |
| void | setLabelBackgroundEnabled(bool enabled) |
Benachrichtigungssignal:
| void | labelBackgroundEnabledChanged(bool enabled) |
labelBorderEnabled : bool
Diese Eigenschaft legt fest, ob für Beschriftungen mit Hintergrund Rahmen gezeichnet werden.
Hat keine Auswirkung, wenn „ labelBackgroundEnabled “ auf „ false “ gesetzt ist.
Zugriffsfunktionen:
| bool | isLabelBorderEnabled() const |
| void | setLabelBorderEnabled(bool enabled) |
Notifier-Signal:
| void | labelBorderEnabledChanged(bool enabled) |
labelTextColor : QColor
Diese Eigenschaft legt die Farbe der für Beschriftungen verwendeten Schriftart fest.
Zugriffsfunktionen:
| QColor | labelTextColor() const |
| void | setLabelTextColor(const QColor &color) |
Benachrichtigungssignal:
| void | labelTextColorChanged(const QColor &color) |
lightColor : QColor
Diese Eigenschaft enthält die Farbe für das Umgebungslicht und das Spiegelungslicht.
Dieser Wert wirkt sich auf das in Q3DScene festgelegte Licht aus.
Zugriffsfunktionen:
| QColor | lightColor() const |
| void | setLightColor(const QColor &color) |
Notifier-Signal:
| void | lightColorChanged(const QColor &color) |
lightStrength : float
Diese Eigenschaft enthält die Stärke des Spiegelungslichts für den gesamten Graphen.
Der Wert muss zwischen 0.0f und 10.0f liegen.
Dieser Wert wirkt sich auf das in Q3DScene festgelegte Licht aus.
Zugriffsfunktionen:
| float | lightStrength() const |
| void | setLightStrength(float strength) |
Notifier-Signal:
| void | lightStrengthChanged(float strength) |
multiHighlightColor : QColor
Diese Eigenschaft enthält die Hervorhebungsfarbe für ausgewählte Objekte.
Wird verwendet, wenn für „ selectionMode “ das Flag „ QAbstract3DGraph::SelectionRow “ oder „ QAbstract3DGraph::SelectionColumn “ gesetzt ist.
Zugriffsfunktionen:
| QColor | multiHighlightColor() const |
| void | setMultiHighlightColor(const QColor &color) |
Notifier-Signal:
| void | multiHighlightColorChanged(const QColor &color) |
multiHighlightGradient : QLinearGradient
Diese Eigenschaft enthält den Hervorhebungsverlauf für ausgewählte Objekte.
Wird verwendet, wenn für „ selectionMode “ das Flag „ QAbstract3DGraph::SelectionRow “ oder „ QAbstract3DGraph::SelectionColumn “ gesetzt ist.
Zugriffsfunktionen:
| QLinearGradient | multiHighlightGradient() const |
| void | setMultiHighlightGradient(const QLinearGradient &gradient) |
Benachrichtigungssignal:
| void | multiHighlightGradientChanged(const QLinearGradient &gradient) |
singleHighlightColor : QColor
Diese Eigenschaft enthält die Hervorhebungsfarbe für ein ausgewähltes Objekt.
Wird verwendet, wenn für „ selectionMode “ das Flag „ QAbstract3DGraph::SelectionItem “ gesetzt ist.
Zugriffsfunktionen:
| QColor | singleHighlightColor() const |
| void | setSingleHighlightColor(const QColor &color) |
Notifier-Signal:
| void | singleHighlightColorChanged(const QColor &color) |
singleHighlightGradient : QLinearGradient
Diese Eigenschaft enthält den Hervorhebungsverlauf für ein ausgewähltes Objekt.
Wird verwendet, wenn für „ selectionMode “ das Flag „ QAbstract3DGraph::SelectionItem “ gesetzt ist.
Zugriffsfunktionen:
| QLinearGradient | singleHighlightGradient() const |
| void | setSingleHighlightGradient(const QLinearGradient &gradient) |
Benachrichtigungssignal:
| void | singleHighlightGradientChanged(const QLinearGradient &gradient) |
type : Theme
Diese Eigenschaft gibt den Typ des Themas an.
Der Typ wird beim Erstellen eines Themas automatisch festgelegt, kann aber auch später geändert werden. Durch das Ändern des Thematyps werden alle anderen Eigenschaften des Themas auf die Werte gesetzt, die das vordefinierte Thema vorgibt. Das Ändern des Thematyps des aktiven Themas des Diagramms führt außerdem dazu, dass alle zugehörigen Reihen zurückgesetzt werden, sodass sie das neue Thema verwenden.
Zugriffsfunktionen:
| Q3DTheme::Theme | type() const |
| void | setType(Q3DTheme::Theme themeType) |
Benachrichtigungssignal:
| void | typeChanged(Q3DTheme::Theme themeType) |
windowColor : QColor
Diese Eigenschaft gibt die Farbe des Anwendungsfensters an, in dem das Diagramm gezeichnet wird.
Zugriffsfunktionen:
| QColor | windowColor() const |
| void | setWindowColor(const QColor &color) |
Notifier-Signal:
| void | windowColorChanged(const QColor &color) |
Dokumentation der Mitgliedsfunktionen
[explicit] Q3DTheme::Q3DTheme(QObject *parent = nullptr)
Erstellt ein neues Theme vom Typ „ ThemeUserDefined “. Ein optionaler Parameter „ parent “ kann angegeben werden und wird dann an den Konstruktor von „ QObject “ übergeben.
[explicit] Q3DTheme::Q3DTheme(Q3DTheme::Theme themeType, QObject *parent = nullptr)
Erstellt ein neues Theme mit ` themeType`, wobei es sich um eines der integrierten Themes von Theme handeln kann. Ein optionaler Parameter ` parent ` kann angegeben werden und wird dann an den Konstruktor von ` QObject ` übergeben.
[virtual noexcept] Q3DTheme::~Q3DTheme()
Das ruiniert das Thema.
© 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.