Sur cette page

Q3DTheme Class

La classe Q3DTheme permet de définir un style visuel pour les graphiques. En savoir plus...

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érite de : QObject
Statut : Obsolète

Cette classe est obsolète. Nous déconseillons fortement de l'utiliser dans du nouveau code.

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 s'appliquent à l'ensemble du graphique. Plusieurs thèmes intégrés sont disponibles ; ils peuvent être utilisés tels quels ou modifiés librement.

Les propriétés suivantes peuvent être redéfinies à l'aide des 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 à l’aide de la valeur d’énumération ThemeUserDefined. La création d’un thème à l’aide du constructeur par défaut génère 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 de ` 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éer un thème intégré et modifier certaines propriétés après sa configuration :

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

Documentation sur les types de membres

enum Q3DTheme::ColorStyle

Styles de couleur.

ConstanteValeurDescription
Q3DTheme::ColorStyleUniform0Les objets sont affichés 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 à l'aide d'une partie du dégradé complet, déterminée par la hauteur de l'objet et sa position sur l'axe Y. Le dégradé utilisé est défini dans les propriétés baseGradients, singleHighlightGradient et multiHighlightGradient.

enum Q3DTheme::Theme

Thèmes intégrés.

ConstanteValeurDescription
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 foncé avec le jaune comme couleur de base.
Q3DTheme::ThemeUserDefined8Un thème défini par l'utilisateur. Pour plus d'informations, consultez Default Theme.

Documentation sur les propriétés

ambientLightStrength : float

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

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

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 d'arrière-plan du graphique.

Fonctions d'accès :

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

Signal de notification :

void backgroundColorChanged(const QColor &color)

backgroundEnabled : bool

Cette propriété s'applique que l'arrière-plan soit visible ou non.

L'arrière-plan est dessiné à l'aide de 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 recommence par la première couleur de la liste.

N'a aucun effet immédiat si la propriété « colorStyle » n'est pas définie sur « ColorStyleUniform ».

Cette valeur peut être remplacée en définissant explicitement l’ baseColor e 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 dégradés, la liste des dégradés revient au début et recommence avec le premier dégradé de la liste

N'a aucun effet immédiat si la propriété « colorStyle » est définie sur « ColorStyleUniform ».

Cette valeur peut être remplacée en définissant explicitement l'baseGradient e 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.

L'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 de notification :

void colorStyleChanged(Q3DTheme::ColorStyle style)

font : QFont

Cette propriété définit la police à 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é détermine si les lignes de la grille sont affichées.

Cette valeur s'applique à toutes les lignes de la grille.

Fonctions d'accès :

bool isGridEnabled() const
void setGridEnabled(bool enabled)

Signal de notification :

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 de notification :

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 d'arrière-plan des étiquettes.

N'a aucun effet si la propriété « labelBackgroundEnabled » est définie sur « 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é s'applique que l'étiquette soit dessinée sur un fond coloré ou sur un fond entièrement transparent.

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

Les étiquettes avec arrière-plan sont dessinées à des tailles identiques pour chaque axe, en fonction de l'étiquette la plus longue, et le texte y est centré. 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é détermine si les contours des étiquettes sont affichés lorsque celles-ci ont un arrière-plan.

N'a aucun effet si la propriété « labelBackgroundEnabled » est définie sur « 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 libellés.

Fonctions d'accès :

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

Signal de notification :

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é définit 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é contient la couleur de mise en évidence des objets sélectionnés.

Utilisée si la propriété « selectionMode » est associée au drapeau « QAbstract3DGraph::SelectionRow » ou « QAbstract3DGraph::SelectionColumn ».

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 dégradé de surbrillance des objets sélectionnés.

Utilisée si la propriété « selectionMode » est associée aux indicateurs « QAbstract3DGraph::SelectionRow » ou « QAbstract3DGraph::SelectionColumn ».

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é contient la couleur de mise en surbrillance d'un objet sélectionné.

selectionMode Utilisée si l'option « QAbstract3DGraph::SelectionItem » est activée.

Fonctions d'accès :

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

Signal de notification :

void singleHighlightColorChanged(const QColor &color)

singleHighlightGradient : QLinearGradient

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

selectionMode Utilisée si l'option « QAbstract3DGraph::SelectionItem » est activée.

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é indique le type du thème.

Le type est défini automatiquement lors de la création d’un thème, mais peut également être modifié ultérieurement. La modification du type de thème entraîne la mise à jour de toutes les autres propriétés du thème selon les spécifications du thème prédéfini. La modification du type de thème du thème actif du graphique réinitialise également toutes les séries associées afin 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 de l'application dans laquelle le graphique est tracé.

Fonctions d'accès :

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

Signal de notification :

void windowColorChanged(const QColor &color)

Documentation des fonctions membres

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

Crée un nouveau thème de type ` ThemeUserDefined`. Un paramètre facultatif ` parent ` peut être fourni ; il est alors transmis au constructeur ` QObject `.

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

Crée un nouveau thème à partir de ` themeType`, qui peut être l'un des thèmes intégrés disponibles sur Theme. Un paramètre facultatif ` parent ` peut être fourni ; il est alors transmis au constructeur de ` QObject `.

[virtual noexcept] Q3DTheme::~Q3DTheme()

Ça gâche complètement 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.