Sur cette page

Q3DTheme Class

La classe Q3DTheme fournit un style visuel pour les graphiques. Plus d'informations...

En-tête : #include <Q3DTheme>
CMake : find_package(Qt6 REQUIRED COMPONENTS DataVisualization)
target_link_libraries(mytarget PRIVATE Qt6::DataVisualization)
qmake : QT += datavisualization
Depuis : QtDataVisualization 1.0
En QML : Theme3D
Hérites : QObject

Types publics

enum ColorStyle { ColorStyleUniform, ColorStyleObjectGradient, ColorStyleRangeGradient }
enum Theme { ThemeQt, ThemePrimaryColors, ThemeDigia, ThemeStoneMoss, ThemeArmyBlue, …, ThemeUserDefined }

Propriétés

Fonctions publiques

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

Signaux

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)

Description détaillée

Spécifie les propriétés visuelles qui affectent l'ensemble du graphique. Il existe plusieurs thèmes intégrés qui peuvent être utilisés tels quels ou modifiés librement.

Les propriétés suivantes peuvent être remplacées en utilisant les propriétés QAbstract3DSeries pour les définir explicitement dans la série : baseColors, baseGradients, et colorStyle.

Les thèmes peuvent être créés à partir de zéro en utilisant la valeur de l'énumération ThemeUserDefined. La création d'un thème à l'aide du constructeur par défaut produit un nouveau thème défini par l'utilisateur.

Thème par défaut

Le tableau suivant répertorie les propriétés contrôlées par les thèmes et les valeurs par défaut pour ThemeUserDefined.

Exemples d'utilisation

Création d'un thème intégré sans aucune modification :

Q3DTheme *theme = new Q3DTheme(Q3DTheme::ThemeQt);

Création d'un thème intégré et modification de certaines propriétés :

Q3DTheme *theme = new Q3DTheme(Q3DTheme::ThemeQt);
theme->setBackgroundEnabled(false);
theme->setLabelBackgroundEnabled(false);

Création d'un thème défini par l'utilisateur :

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)));

Création d'un thème intégré et modification de certaines propriétés après qu'il ait été défini :

Q3DBars *graph = new Q3DBars();
graph->activeTheme()->setType(Q3DTheme::ThemePrimaryColors);
graph->activeTheme()->setBaseColor(Qt::red);
graph->activeTheme()->setSingleHighlightColor(Qt::yellow);

Type de membre Documentation

enum Q3DTheme::ColorStyle

Styles de couleurs.

ConstanteValeurDescription
Q3DTheme::ColorStyleUniform0Les objets sont rendus dans une seule couleur. La couleur utilisée est spécifiée dans les propriétés baseColors, singleHighlightColor et multiHighlightColor.
Q3DTheme::ColorStyleObjectGradient1Les objets sont colorés à l'aide d'un dégradé complet pour chaque objet, quelle que soit sa hauteur. Le dégradé utilisé est spécifié dans les propriétés baseGradients, singleHighlightGradient et multiHighlightGradient.
Q3DTheme::ColorStyleRangeGradient2Les objets sont colorés en utilisant une partie du dégradé complet déterminé par la hauteur de l'objet et sa position sur l'axe Y. Le dégradé utilisé est spécifié dans les propriétés , et . Le dégradé utilisé est spécifié dans les propriétés baseGradients, singleHighlightGradient et multiHighlightGradient.

enum Q3DTheme::Theme

Thèmes intégrés.

ConstantesValeurDescription
Q3DTheme::ThemeQt0Un thème clair avec le vert comme couleur de base.
Q3DTheme::ThemePrimaryColors1Un thème clair avec le jaune comme couleur de base.
Q3DTheme::ThemeDigia2Un thème clair avec le gris comme couleur de base.
Q3DTheme::ThemeStoneMoss3Un thème moyennement foncé avec le jaune comme couleur de base.
Q3DTheme::ThemeArmyBlue4Un thème moyennement clair avec le bleu comme couleur de base.
Q3DTheme::ThemeRetro5Un thème moyennement clair avec le marron comme couleur de base.
Q3DTheme::ThemeEbony6Un thème sombre avec le blanc comme couleur de base.
Q3DTheme::ThemeIsabelle7Un thème sombre avec le jaune comme couleur de base.
Q3DTheme::ThemeUserDefined8Un thème défini par l'utilisateur. Pour plus d'informations, voir Default Theme.

Documentation sur les propriétés

ambientLightStrength : float

Cette propriété contient l'intensité de la lumière ambiante pour l'ensemble du graphique.

Cette valeur détermine l'uniformité et la luminosité des couleurs sur l'ensemble du graphique, quelle que soit la position de la lumière.

La valeur doit être comprise entre 0.0f et 1.0f.

Fonctions d'accès :

float ambientLightStrength() const
void setAmbientLightStrength(float strength)

Signal de notification :

void ambientLightStrengthChanged(float strength)

backgroundColor : QColor

Cette propriété définit la couleur de l'arrière-plan du graphique.

Fonctions d'accès :

QColor backgroundColor() const
void setBackgroundColor(const QColor &color)

Signal du notificateur :

void backgroundColorChanged(const QColor &color)

backgroundEnabled : bool

Cette propriété indique si l'arrière-plan est visible.

L'arrière-plan est dessiné en utilisant la valeur de backgroundColor.

Fonctions d'accès :

bool isBackgroundEnabled() const
void setBackgroundEnabled(bool enabled)

Signal de notification :

void backgroundEnabledChanged(bool enabled)

baseColors : QList<QColor>

Cette propriété contient la liste des couleurs de base à utiliser pour tous les objets du graphique, série par série.

S'il y a plus de séries que de couleurs, la liste des couleurs s'enroule et recommence avec la première couleur de la liste.

N'a pas d'effet immédiat si colorStyle n'est pas ColorStyleUniform.

Cette valeur peut être remplacée en définissant explicitement baseColor dans la série.

Fonctions d'accès :

QList<QColor> baseColors() const
void setBaseColors(const QList<QColor> &colors)

Signal de notification :

void baseColorsChanged(const QList<QColor> &colors)

baseGradients : QList<QLinearGradient>

Cette propriété contient la liste des dégradés de base à utiliser pour tous les objets du graphique, série par série.

S'il y a plus de séries que de gradients, la liste des gradients s'enroule et recommence avec le premier gradient de la liste

N'a pas d'effet immédiat si colorStyle est ColorStyleUniform.

Cette valeur peut être remplacée en définissant explicitement l'adresse baseGradient dans la série.

Fonctions d'accès :

QList<QLinearGradient> baseGradients() const
void setBaseGradients(const QList<QLinearGradient> &gradients)

Signal de notification :

void baseGradientsChanged(const QList<QLinearGradient> &gradients)

colorStyle : ColorStyle

Cette propriété définit le style des couleurs du graphique.

Une des valeurs de l'énumération ColorStyle.

Cette valeur peut être remplacée en définissant explicitement colorStyle dans la série.

Fonctions d'accès :

Q3DTheme::ColorStyle colorStyle() const
void setColorStyle(Q3DTheme::ColorStyle style)

Signal Notifier :

void colorStyleChanged(Q3DTheme::ColorStyle style)

font : QFont

Cette propriété définit la police de caractères à utiliser pour les étiquettes.

Fonctions d'accès :

QFont font() const
void setFont(const QFont &font)

Signal de notification :

void fontChanged(const QFont &font)

gridEnabled : bool

Cette propriété indique si les lignes de la grille sont dessinées.

Cette valeur affecte toutes les lignes de la grille.

Fonctions d'accès :

bool isGridEnabled() const
void setGridEnabled(bool enabled)

Signal du notificateur :

void gridEnabledChanged(bool enabled)

gridLineColor : QColor

Cette propriété définit la couleur des lignes de la grille.

Remarque : la transparence n'est pas prise en charge et entraînera un comportement indéfini.

Fonctions d'accès :

QColor gridLineColor() const
void setGridLineColor(const QColor &color)

Signal du notificateur :

void gridLineColorChanged(const QColor &color)

highlightLightStrength : float

Cette propriété définit l'intensité de la lumière spéculaire pour les objets sélectionnés.

La valeur doit être comprise entre 0.0f et 10.0f.

Fonctions d'accès :

float highlightLightStrength() const
void setHighlightLightStrength(float strength)

Signal de notification :

void highlightLightStrengthChanged(float strength)

labelBackgroundColor : QColor

Cette propriété définit la couleur de l'arrière-plan des étiquettes.

Sans effet si labelBackgroundEnabled est false.

Fonctions d'accès :

QColor labelBackgroundColor() const
void setLabelBackgroundColor(const QColor &color)

Signal de notification :

void labelBackgroundColorChanged(const QColor &color)

labelBackgroundEnabled : bool

Cette propriété indique si l'étiquette est dessinée avec un arrière-plan de couleur ou avec un arrière-plan entièrement transparent.

La valeur labelBackgroundColor (y compris alpha) est utilisée pour dessiner l'arrière-plan.

Les étiquettes avec un arrière-plan sont dessinées à des tailles égales par axe sur la base de l'étiquette la plus longue, et le texte est centré dans ces étiquettes. Les étiquettes sans arrière-plan sont dessinées telles quelles et sont alignées à gauche ou à droite en fonction de leur position dans le graphique.

Fonctions d'accès :

bool isLabelBackgroundEnabled() const
void setLabelBackgroundEnabled(bool enabled)

Signal de notification :

void labelBackgroundEnabledChanged(bool enabled)

labelBorderEnabled : bool

Cette propriété indique si les bordures des étiquettes sont dessinées pour les étiquettes qui ont un arrière-plan.

Sans effet si labelBackgroundEnabled est false.

Fonctions d'accès :

bool isLabelBorderEnabled() const
void setLabelBorderEnabled(bool enabled)

Signal de notification :

void labelBorderEnabledChanged(bool enabled)

labelTextColor : QColor

Cette propriété définit la couleur de la police utilisée pour les étiquettes.

Fonctions d'accès :

QColor labelTextColor() const
void setLabelTextColor(const QColor &color)

Signal du notificateur :

void labelTextColorChanged(const QColor &color)

lightColor : QColor

Cette propriété définit la couleur de la lumière ambiante et spéculaire.

Cette valeur affecte la lumière spécifiée dans Q3DScene.

Fonctions d'accès :

QColor lightColor() const
void setLightColor(const QColor &color)

Signal de notification :

void lightColorChanged(const QColor &color)

lightStrength : float

Cette propriété contient l'intensité de la lumière spéculaire pour l'ensemble du graphique.

La valeur doit être comprise entre 0.0f et 10.0f.

Cette valeur affecte la lumière spécifiée dans Q3DScene.

Fonctions d'accès :

float lightStrength() const
void setLightStrength(float strength)

Signal de notification :

void lightStrengthChanged(float strength)

multiHighlightColor : QColor

Cette propriété définit la couleur de mise en évidence des objets sélectionnés.

Elle est utilisée si l'option QAbstract3DGraph::SelectionRow ou QAbstract3DGraph::SelectionColumn est activée sur selectionMode.

Fonctions d'accès :

QColor multiHighlightColor() const
void setMultiHighlightColor(const QColor &color)

Signal de notification :

void multiHighlightColorChanged(const QColor &color)

multiHighlightGradient : QLinearGradient

Cette propriété contient le gradient de mise en évidence des objets sélectionnés.

Elle est utilisée si l'option QAbstract3DGraph::SelectionRow ou QAbstract3DGraph::SelectionColumn est activée sur selectionMode.

Fonctions d'accès :

QLinearGradient multiHighlightGradient() const
void setMultiHighlightGradient(const QLinearGradient &gradient)

Signal de notification :

void multiHighlightGradientChanged(const QLinearGradient &gradient)

singleHighlightColor : QColor

Cette propriété définit la couleur de surbrillance d'un objet sélectionné.

Elle est utilisée si l'option QAbstract3DGraph::SelectionItem est activée sur selectionMode.

Fonctions d'accès :

QColor singleHighlightColor() const
void setSingleHighlightColor(const QColor &color)

Signal du notificateur :

void singleHighlightColorChanged(const QColor &color)

singleHighlightGradient : QLinearGradient

Cette propriété contient le gradient de mise en évidence d'un objet sélectionné.

Elle est utilisée si l'option QAbstract3DGraph::SelectionItem est activée sur selectionMode.

Fonctions d'accès :

QLinearGradient singleHighlightGradient() const
void setSingleHighlightGradient(const QLinearGradient &gradient)

Signal de notification :

void singleHighlightGradientChanged(const QLinearGradient &gradient)

type : Theme

Cette propriété contient le type du thème.

Le type est automatiquement défini lors de la construction d'un thème, mais il peut également être modifié ultérieurement. La modification du type de thème entraîne la modification de toutes les autres propriétés du thème en fonction du thème prédéfini. La modification du type de thème du thème actif du graphique réinitialisera également toutes les séries attachées pour qu'elles utilisent le nouveau thème.

Fonctions d'accès :

Q3DTheme::Theme type() const
void setType(Q3DTheme::Theme themeType)

Signal de notification :

void typeChanged(Q3DTheme::Theme themeType)

windowColor : QColor

Cette propriété définit la couleur de la fenêtre d'application dans laquelle le graphique est dessiné.

Fonctions d'accès :

QColor windowColor() const
void setWindowColor(const QColor &color)

Signal Notificateur :

void windowColorChanged(const QColor &color)

Fonction membre Documentation

[explicit] Q3DTheme::Q3DTheme(QObject *parent = nullptr)

Construit un nouveau thème de type ThemeUserDefined. Un paramètre optionnel parent peut être donné et est alors transmis au constructeur QObject.

[explicit] Q3DTheme::Q3DTheme(Q3DTheme::Theme themeType, QObject *parent = nullptr)

Construit un nouveau thème avec themeType, qui peut être l'un des thèmes intégrés de Theme. Un paramètre optionnel parent peut être fourni et est ensuite transmis au constructeur QObject.

[virtual noexcept] Q3DTheme::~Q3DTheme()

Détruit le thème.

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