QGraphsTheme Class
La classe `QGraphsTheme` permet de définir un style visuel pour les graphiques. En savoir plus...
| En-tête : | #include <QGraphsTheme> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Graphs) target_link_libraries(mytarget PRIVATE Qt6::Graphs) |
| qmake : | QT += graphs |
| En QML : | GraphsTheme |
| Hérite de : | QObject et QQmlParserStatus |
- Liste de tous les membres, y compris les membres hérités
- QGraphsTheme fait partie des classes communes C++ d'Qt Graphs .
Types publics
| enum class | ColorScheme { Automatic, Light, Dark } |
| enum class | ColorStyle { Uniform, ObjectGradient, RangeGradient } |
| enum class | Theme { QtGreen, QtGreenNeon, MixSeries, OrangeSeries, YellowSeries, …, UserDefined } |
Propriétés
|
|
Fonctions publiques
| QGraphsLine | axisX() const |
| QFont | axisXLabelFont() const |
| QGraphsLine | axisY() const |
| QFont | axisYLabelFont() const |
| QGraphsLine | axisZ() const |
| QFont | axisZLabelFont() const |
| QColor | backgroundColor() const |
| QList<QColor> | borderColors() const |
| qreal | borderWidth() const |
| QGraphsTheme::ColorScheme | colorScheme() const |
| QGraphsTheme::ColorStyle | colorStyle() const |
| QGraphsLine | grid() const |
| bool | isBackgroundVisible() const |
| bool | isGridVisible() const |
| bool | isLabelBackgroundVisible() const |
| bool | isLabelBorderVisible() const |
| bool | isPlotAreaBackgroundVisible() const |
| QColor | labelBackgroundColor() const |
| QFont | labelFont() const |
| QColor | labelTextColor() const |
| bool | labelsVisible() const |
| QColor | multiHighlightColor() const |
| QColor | plotAreaBackgroundColor() const |
| QList<QColor> | seriesColors() const |
| QList<QLinearGradient> | seriesGradients() const |
| void | setAxisX(const QGraphsLine &newAxisX) |
| void | setAxisXLabelFont(const QFont &newAxisXLabelFont) |
| void | setAxisY(const QGraphsLine &newAxisY) |
| void | setAxisYLabelFont(const QFont &newAxisYLabelFont) |
| void | setAxisZ(const QGraphsLine &newAxisZ) |
| void | setAxisZLabelFont(const QFont &newAxisZLabelFont) |
| void | setBackgroundColor(QColor newBackgroundColor) |
| void | setBackgroundVisible(bool newBackgroundVisible) |
| void | setBorderColors(const QList<QColor> &newBorderColors) |
| void | setBorderWidth(qreal newBorderWidth) |
| void | setColorScheme(QGraphsTheme::ColorScheme newColorScheme) |
| void | setColorStyle(QGraphsTheme::ColorStyle newColorStyle) |
| void | setGrid(const QGraphsLine &newGrid) |
| void | setGridVisible(bool newGridVisibility) |
| void | setLabelBackgroundColor(QColor newLabelBackgroundColor) |
| void | setLabelBackgroundVisible(bool newLabelBackgroundVisibility) |
| void | setLabelBorderVisible(bool newLabelBorderVisibility) |
| void | setLabelFont(const QFont &newFont) |
| void | setLabelTextColor(QColor newLabelTextColor) |
| void | setLabelsVisible(bool newLabelsVisibility) |
| void | setMultiHighlightColor(QColor newMultiHighlightColor) |
| void | setPlotAreaBackgroundColor(QColor newBackgroundColor) |
| void | setPlotAreaBackgroundVisible(bool newBackgroundVisibility) |
| void | setSeriesColors(const QList<QColor> &newSeriesColors) |
| void | setSeriesGradients(const QList<QLinearGradient> &newSeriesGradients) |
| void | setSingleHighlightColor(QColor newSingleHighlightColor) |
| void | setTheme(QGraphsTheme::Theme newTheme, QGraphsTheme::ForceTheme force = ForceTheme::No) |
| QColor | singleHighlightColor() const |
| QGraphsTheme::Theme | theme() const |
Signaux
| void | axisXChanged() |
| void | axisXLabelFontChanged() |
| void | axisYChanged() |
| void | axisYLabelFontChanged() |
| void | axisZChanged() |
| void | axisZLabelFontChanged() |
| void | backgroundColorChanged() |
| void | backgroundVisibleChanged() |
| void | borderColorsChanged() |
| void | borderWidthChanged() |
| void | colorSchemeChanged() |
| void | colorStyleChanged(QGraphsTheme::ColorStyle type) |
| void | gridChanged() |
| void | gridVisibleChanged() |
| void | labelBackgroundColorChanged() |
| void | labelBackgroundVisibleChanged() |
| void | labelBorderVisibleChanged() |
| void | labelFontChanged() |
| void | labelTextColorChanged() |
| void | labelsVisibleChanged() |
| void | multiHighlightColorChanged(QColor color) |
| void | multiHighlightGradientQMLChanged() |
| void | plotAreaBackgroundColorChanged() |
| void | plotAreaBackgroundVisibleChanged() |
| void | seriesColorsChanged(const QList<QColor> &list) |
| void | singleHighlightColorChanged(QColor color) |
| void | singleHighlightGradientQMLChanged() |
| void | themeChanged(QGraphsTheme::Theme theme) |
Description détaillée
Spécifie les propriétés visuelles qui s'appliquent à l'ensemble du graphique. Plusieurs thèmes intégrés peuvent être utilisés tels quels ou modifiés librement.
Les thèmes peuvent être créés à partir de zéro à l'aide de la valeur d'énumération ` UserDefined `. 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.
Personnalisation du thème
Le thème par défaut est « QtGreen », mais il est possible de personnaliser chaque propriété.
Le tableau suivant répertorie les propriétés contrôlées par un thème ainsi que les valeurs par défaut pour « UserDefined ».
| Propriété | Valeur par défaut |
|---|---|
| backgroundVisible | true |
| seriesColors | Qt::black |
| seriesGradients | QLinearGradient. Essentiellement entièrement noir. |
| colorStyle | Uniforme |
| labelFont | QFont |
| gridVisible | true |
| labelBackgroundVisible | true |
| labelBorderVisible | true |
| labelsVisible | true |
Exemples d'utilisation
Création d'un thème intégré sans aucune modification :
QGraphsTheme *theme = new QGraphsTheme();Création d'un thème intégré et modification de certaines propriétés :
QGraphsTheme *theme = new QGraphsTheme();
theme->setBackgroundVisible(false);
theme->setLabelBackgroundVisible(false);Modification d'un thème défini par l'utilisateur. Le thème a été créé de la même manière que dans les extraits de code précédents :
theme->setTheme(QGraphsTheme::Theme::UserDefined);
theme->setBackgroundColor(QColor(QRgb(0x99ca53)));
theme->setBackgroundVisible(true);
QList<QColor> colors = { QColor(QRgb(0x209fdf)) };
theme->setSeriesColors(colors);
theme->setColorStyle(QGraphsTheme::ColorStyle::Uniform);
theme->setLabelFont(QFont(QStringLiteral("Impact"), 35));
theme->setGridVisible(true);
auto gridline = theme->grid();
gridline.setMainColor(QColor(QRgb(0x99ca53)));
theme->setGrid(gridline);
theme->setLabelBackgroundColor(QColor(0xf6, 0xa6, 0x25, 0xa0));
theme->setLabelBackgroundVisible(true);
theme->setLabelBorderVisible(true);
theme->setLabelTextColor(QColor(QRgb(0x404044)));
theme->setMultiHighlightColor(QColor(QRgb(0x6d5fd5)));
theme->setSingleHighlightColor(QColor(QRgb(0xf6a625)));
theme->setBackgroundColor(QColor(QRgb(0xffffff)));Modification de certaines propriétés après l'application du thème à un graphe :
QQuickWidget quickWidget;
Q3DBarsWidgetItem bars;
bars.setWidget(&quickWidget);
bars.widget()->setMinimumSize(QSize(512, 512));
bars.activeTheme()->setTheme(QGraphsTheme::Theme::MixSeries);
QList<QColor> color = { QColor(Qt::red) };
bars.activeTheme()->setSeriesColors(color);
bars.activeTheme()->setSingleHighlightColor(Qt::yellow);Documentation sur les types de membres
enum class QGraphsTheme::ColorScheme
Représente la palette de couleurs du graphique.
| Constante | Valeur | Description |
|---|---|---|
QGraphsTheme::ColorScheme::Automatic | 0 | Les couleurs d'arrière-plan suivent la palette de couleurs de la plateforme si celle-ci est disponible. Si ce n'est pas le cas, l'apparence « Clair » est utilisée. |
QGraphsTheme::ColorScheme::Light | 1 | Les couleurs d’arrière-plan sont plus claires que la couleur du texte, c’est-à-dire que le thème est clair. |
QGraphsTheme::ColorScheme::Dark | 2 | Les couleurs d'arrière-plan sont plus foncées que la couleur du texte, c'est-à-dire que le thème est sombre. |
Voir aussi Qt::ColorScheme.
enum class QGraphsTheme::ColorStyle
Types de gradients.
| Constant | Valeur | Description |
|---|---|---|
QGraphsTheme::ColorStyle::Uniform | 0 | Les objets sont affichés dans une seule couleur. La couleur utilisée est spécifiée dans les propriétés seriesColors, singleHighlightColor et multiHighlightColor. |
QGraphsTheme::ColorStyle::ObjectGradient | 1 | Les objets sont colorés à l'aide d'un dégradé complet pour chaque objet, quelle que soit la hauteur de celui-ci. Le dégradé utilisé est spécifié dans les propriétés seriesGradients, singleHighlightGradient et multiHighlightGradient. |
QGraphsTheme::ColorStyle::RangeGradient | 2 | Les 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 spécifié dans les propriétés seriesGradients, singleHighlightGradient et multiHighlightGradient. |
enum class QGraphsTheme::Theme
Thèmes intégrés.
| Constante | Valeur | Description |
|---|---|---|
QGraphsTheme::Theme::QtGreen | 0 | Un thème clair avec le vert comme couleur de base. |
QGraphsTheme::Theme::QtGreenNeon | 1 | Un thème clair avec le vert néon comme couleur de base. |
QGraphsTheme::Theme::MixSeries | 2 | Un thème varié avec différentes couleurs. |
QGraphsTheme::Theme::OrangeSeries | 3 | Un thème dont la couleur de base est l'orange. |
QGraphsTheme::Theme::YellowSeries | 4 | Un thème dont la couleur de base est le jaune. |
QGraphsTheme::Theme::BlueSeries | 5 | Un thème dont la couleur de base est le bleu. |
QGraphsTheme::Theme::PurpleSeries | 6 | Un thème dont la couleur de base est le violet. |
QGraphsTheme::Theme::GreySeries | 7 | Un thème dont la couleur de base est le gris. |
QGraphsTheme::Theme::UserDefined | 8 | Un thème défini par l'utilisateur. Pour plus d'informations, consultez Customizing Theme. |
Documentation sur les propriétés
axisX : QGraphsLine
Propriétés de mise en forme de la ligne et des libellés de l'axe X du graphique.
Fonctions d’accès :
| QGraphsLine | axisX() const |
| void | setAxisX(const QGraphsLine &newAxisX) |
Signal de notification :
| void | axisXChanged() |
axisXLabelFont : QFont
Cette propriété définit la police à utiliser pour les étiquettes de l'axe des x.
Fonctions d'accès :
| QFont | axisXLabelFont() const |
| void | setAxisXLabelFont(const QFont &newAxisXLabelFont) |
Signal de notification :
| void | axisXLabelFontChanged() |
axisY : QGraphsLine
Propriétés de mise en forme de la ligne et de l'étiquette de l'axe des Y du graphique.
Fonctions d'accès :
| QGraphsLine | axisY() const |
| void | setAxisY(const QGraphsLine &newAxisY) |
Signal de notification :
| void | axisYChanged() |
axisYLabelFont : QFont
Cette propriété définit la police à utiliser pour les étiquettes de l'axe des y.
Fonctions d’accès :
| QFont | axisYLabelFont() const |
| void | setAxisYLabelFont(const QFont &newAxisYLabelFont) |
Signal de notification :
| void | axisYLabelFontChanged() |
axisZ : QGraphsLine
Propriétés de style de la ligne et des étiquettes de l'axe Z pour le graphique.
Fonctions d'accès :
| QGraphsLine | axisZ() const |
| void | setAxisZ(const QGraphsLine &newAxisZ) |
Signal de notification :
| void | axisZChanged() |
axisZLabelFont : QFont
Cette propriété définit la police à utiliser pour les libellés sur l'axe z.
Fonctions d'accès :
| QFont | axisZLabelFont() const |
| void | setAxisZLabelFont(const QFont &newAxisZLabelFont) |
Signal de notification :
| void | axisZLabelFontChanged() |
backgroundColor : QColor
Cette propriété définit la couleur de la vue dans laquelle le graphique est tracé. La valeur par défaut dépend de colorScheme.
Fonctions d'accès :
| QColor | backgroundColor() const |
| void | setBackgroundColor(QColor newBackgroundColor) |
Signal de notification :
| void | backgroundColorChanged() |
backgroundVisible : bool
Cette propriété détermine si l'arrière-plan est visible.
L'arrière-plan est dessiné à l'aide de la valeur de « backgroundColor ». La valeur par défaut est « true ».
Fonctions d'accès :
| bool | isBackgroundVisible() const |
| void | setBackgroundVisible(bool newBackgroundVisible) |
Signal de notification :
| void | backgroundVisibleChanged() |
[read-only] baseColors : const QQmlListProperty<QQuickGraphsColor>
Liste des couleurs de base à utiliser pour la série lorsque l'on utilise le style de couleurs « ColorStyle::Uniform ».
[read-only] baseGradients : const QQmlListProperty<QQuickGradient>
Liste des dégradés de base à utiliser pour la série lorsque l'on utilise le style de couleur « ColorStyle::RangeGradient ».
borderColors : QList<QColor>
Cette propriété contient la liste des couleurs de bordure à 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 revient au début et 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 «Uniform».
Fonctions d'accès :
| QList<QColor> | borderColors() const |
| void | setBorderColors(const QList<QColor> &newBorderColors) |
Signal de notification :
| void | borderColorsChanged() |
borderWidth : qreal
Cette propriété définit la largeur des bordures du graphique, le cas échéant. La valeur par défaut est « 1.0 ».
Fonctions d'accès :
| qreal | borderWidth() const |
| void | setBorderWidth(qreal newBorderWidth) |
Signal de notification :
| void | borderWidthChanged() |
colorScheme : QGraphsTheme::ColorScheme
La palette de couleurs du graphique utilisé.
Fonctions d'accès :
| QGraphsTheme::ColorScheme | colorScheme() const |
| void | setColorScheme(QGraphsTheme::ColorScheme newColorScheme) |
Signal de notification :
| void | colorSchemeChanged() |
Voir également Qt::ColorScheme.
colorStyle : QGraphsTheme::ColorStyle
Le style des couleurs du graphique. L'une des valeurs de l'énumération QGraphsTheme::ColorStyle.
Cette valeur peut être remplacée en définissant explicitement Abstract3DSeries.colorStyle dans la série.
Remarque : cette propriété n'a aucun effet dans « Qt Graphs » pour le 2D.
Fonctions d'accès :
| QGraphsTheme::ColorStyle | colorStyle() const |
| void | setColorStyle(QGraphsTheme::ColorStyle newColorStyle) |
Signal de notification :
| void | colorStyleChanged(QGraphsTheme::ColorStyle type) |
Voir également QGraphsTheme::ColorStyle.
grid : QGraphsLine
Propriétés de mise en forme des lignes de la grille du graphique.
Fonctions d'accès :
| QGraphsLine | grid() const |
| void | setGrid(const QGraphsLine &newGrid) |
Signal de notification :
| void | gridChanged() |
gridVisible : 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. La valeur par défaut est « true ».
Fonctions d'accès :
| bool | isGridVisible() const |
| void | setGridVisible(bool newGridVisibility) |
Signal de notification :
| void | gridVisibleChanged() |
labelBackgroundColor : QColor
Cette propriété définit la couleur d'arrière-plan des étiquettes.
N'a aucun effet si « labelBackgroundVisible » est défini sur « false ». La valeur par défaut dépend de « colorScheme ».
Fonctions d'accès :
| QColor | labelBackgroundColor() const |
| void | setLabelBackgroundColor(QColor newLabelBackgroundColor) |
Signal de notification :
| void | labelBackgroundColorChanged() |
labelBackgroundVisible : 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. La valeur par défaut est true.
Fonctions d'accès :
| bool | isLabelBackgroundVisible() const |
| void | setLabelBackgroundVisible(bool newLabelBackgroundVisibility) |
Signal de notification :
| void | labelBackgroundVisibleChanged() |
labelBorderVisible : bool
Cette propriété détermine si les bordures des étiquettes sont affichées lorsque celles-ci possèdent un arrière-plan.
N'a aucun effet si « labelBackgroundVisible » est défini sur « false ». La valeur par défaut est « true ».
Fonctions d'accès :
| bool | isLabelBorderVisible() const |
| void | setLabelBorderVisible(bool newLabelBorderVisibility) |
Signal de notification :
| void | labelBorderVisibleChanged() |
labelFont : QFont
Cette propriété définit la police à utiliser pour les étiquettes.
Fonctions d'accès :
| QFont | labelFont() const |
| void | setLabelFont(const QFont &newFont) |
Signal de notification :
| void | labelFontChanged() |
labelTextColor : QColor
Cette propriété définit la couleur de la police utilisée pour les étiquettes.
Si un axe a explicitement spécifié la propriété « labelTextColor », celle-ci n'a aucun effet.
La valeur par défaut dépend de l'colorScheme.
Fonctions d'accès :
| QColor | labelTextColor() const |
| void | setLabelTextColor(QColor newLabelTextColor) |
Signal de notification :
| void | labelTextColorChanged() |
labelsVisible : bool
Cette propriété détermine si les étiquettes sont affichées ou non.
Si cette propriété est définie sur « false », toutes les autres propriétés des étiquettes n'ont aucun effet. La valeur par défaut est « true ».
Fonctions d'accès :
| bool | labelsVisible() const |
| void | setLabelsVisible(bool newLabelsVisibility) |
Signal de notification :
| void | labelsVisibleChanged() |
multiHighlightColor : QColor
Cette propriété contient la couleur de mise en évidence des objets sélectionnés.
Utilisée si l'selectionMode est associée à l'indicateur « QtGraphs3D::SelectionFlag::Row » ou « QtGraphs3D::SelectionFlag::Column ». La valeur par défaut dépend de l'colorScheme.
Fonctions d’accès :
| QColor | multiHighlightColor() const |
| void | setMultiHighlightColor(QColor newMultiHighlightColor) |
Signal de notification :
| void | multiHighlightColorChanged(QColor color) |
multiHighlightGradient : QQuickGradient*
Cette propriété contient le dégradé de surbrillance des objets sélectionnés.
Utilisée si la propriété « selectionMode » comporte le drapeau « QtGraphs3D::SelectionFlag::Row » ou « QtGraphs3D::SelectionFlag::Column ». La valeur par défaut dépend de la propriété « colorScheme ».
Signal de notification :
| void | multiHighlightGradientQMLChanged() |
plotAreaBackgroundColor : QColor
Cette propriété définit la couleur d'arrière-plan de la zone de tracé du graphique. La valeur par défaut dépend de colorScheme.
Fonctions d'accès :
| QColor | plotAreaBackgroundColor() const |
| void | setPlotAreaBackgroundColor(QColor newBackgroundColor) |
Signal de notification :
| void | plotAreaBackgroundColorChanged() |
plotAreaBackgroundVisible : bool
Cette propriété détermine si l'arrière-plan de la zone de tracé est visible.
L'arrière-plan est dessiné à l'aide de la valeur de ` plotAreaBackgroundColor`. La valeur par défaut est ` true`.
Fonctions d'accès :
| bool | isPlotAreaBackgroundVisible() const |
| void | setPlotAreaBackgroundVisible(bool newBackgroundVisibility) |
Signal de notification :
| void | plotAreaBackgroundVisibleChanged() |
seriesColors : 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 se répète et 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 `Uniform`.
Cette valeur peut être remplacée en définissant explicitement l'baseColor e dans la série.
Fonctions d’accès :
| QList<QColor> | seriesColors() const |
| void | setSeriesColors(const QList<QColor> &newSeriesColors) |
Signal de notification :
| void | seriesColorsChanged(const QList<QColor> &list) |
singleHighlightColor : QColor
Cette propriété contient la couleur de mise en évidence d'un objet sélectionné.
Utilisée si l'option « selectionMode » est activée ( QtGraphs3D::SelectionFlag::Item ). La valeur par défaut dépend de l'option « colorScheme ».
Fonctions d'accès :
| QColor | singleHighlightColor() const |
| void | setSingleHighlightColor(QColor newSingleHighlightColor) |
Signal de notification :
| void | singleHighlightColorChanged(QColor color) |
singleHighlightGradient : QQuickGradient*
Cette propriété contient le dégradé de surbrillance d'un objet sélectionné.
Utilisée si l'option « selectionMode » est activée ( QtGraphs3D::SelectionFlag::Item ). La valeur par défaut dépend de colorScheme.
Signal de notification :
| void | singleHighlightGradientQMLChanged() |
theme : QGraphsTheme::Theme
Le type du thème. Si aucun type n'est défini, le type par défaut est « GraphsTheme.Theme.QtGreen ». La modification du type de thème après la création de l'élément entraînera 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éinitialisera également toutes les séries associées afin qu'elles utilisent le nouveau thème.
Fonctions d’accès :
| QGraphsTheme::Theme | theme() const |
| void | setTheme(QGraphsTheme::Theme newTheme, QGraphsTheme::ForceTheme force = ForceTheme::No) |
Signal de notification :
| void | themeChanged(QGraphsTheme::Theme theme) |
[read-only] themeChildren : const QQmlListProperty<QObject>
Liste des objets enfants du thème. Il s'agit d'une propriété par défaut qui permet de spécifier des objets enfants au sein de l'élément Theme en QML sans avoir à utiliser explicitement le nom de la propriété « children ».
Documentation des fonctions membres
QList<QLinearGradient> QGraphsTheme::seriesGradients() const
Renvoie la liste des dégradés de séries utilisés par le thème.
Voir aussi setSeriesGradients().
void QGraphsTheme::setSeriesGradients(const QList<QLinearGradient> &newSeriesGradients)
Définit « newSeriesGradients » comme gradients de la série pour le thème.
Voir également seriesGradients().
© 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.