QGraphsTheme Class
La classe QGraphsTheme fournit un style visuel pour les graphiques. Plus d'informations...
| 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 : | QObject et QQmlParserStatus |
- Liste de tous les membres, y compris les membres hérités
- QGraphsTheme fait partie de Qt Graphs C++ Common Classes.
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 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 thèmes peuvent être créés à partir de zéro en utilisant la valeur de l'enum UserDefined. La création d'un thème à l'aide du constructeur par défaut produit 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 et 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 exemples 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 que le thème a été défini comme un graphique :
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);
Type de membre Documentation
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 le schéma de couleurs de la plate-forme s'il est disponible. Si elle n'est pas disponible, c'est l'apparence "Light" qui 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.
| Constante | Valeur | Description |
|---|---|---|
QGraphsTheme::ColorStyle::Uniform | 0 | Les objets sont rendus 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 sa hauteur. 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 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 seriesGradients, singleHighlightGradient et multiHighlightGradient. |
enum class QGraphsTheme::Theme
Thèmes intégrés.
| Constantes | Valeur | Description |
|---|---|---|
QGraphsTheme::Theme::QtGreen | 0 | Un thème clair dont la couleur de base est le vert. |
QGraphsTheme::Theme::QtGreenNeon | 1 | Un thème clair dont la couleur de base est le vert néon. |
QGraphsTheme::Theme::MixSeries | 2 | Thème mixte avec différentes couleurs. |
QGraphsTheme::Theme::OrangeSeries | 3 | 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, voir Customizing Theme. |
Documentation sur les propriétés
axisX : QGraphsLine
Les propriétés de style de la ligne et de l'étiquette de l'axe X pour le 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 sur l'axe des x.
Fonctions d'accès :
| QFont | axisXLabelFont() const |
| void | setAxisXLabelFont(const QFont &newAxisXLabelFont) |
Signal de notification :
| void | axisXLabelFontChanged() |
axisY : QGraphsLine
Les propriétés de style de la ligne et de l'étiquette de l'axe Y pour le 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 sur l'axe des y.
Fonctions d'accès :
| QFont | axisYLabelFont() const |
| void | setAxisYLabelFont(const QFont &newAxisYLabelFont) |
Signal de notification :
| void | axisYLabelFontChanged() |
axisZ : QGraphsLine
Les propriétés de style de la ligne et de l'étiquette 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 étiquettes 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 dessiné. La valeur par défaut dépend de colorScheme.
Fonctions d'accès :
| QColor | backgroundColor() const |
| void | setBackgroundColor(QColor newBackgroundColor) |
Signal Notificateur :
| void | backgroundColorChanged() |
backgroundVisible : bool
Cette propriété indique si l'arrière-plan est visible.
L'arrière-plan est dessiné en utilisant 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>
La liste des couleurs de base à utiliser pour la série lors de l'utilisation du style de couleur ColorStyle::Uniform.
[read-only] baseGradients : const QQmlListProperty<QQuickGradient>
La liste des dégradés de base à utiliser pour la série lors de l'utilisation du 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 s'enroule et recommence avec la première couleur de la liste.
N'a pas d'effet immédiat si colorStyle n'est pas 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
Le schéma de couleurs du graphique en cours d'utilisation.
Fonctions d'accès :
| QGraphsTheme::ColorScheme | colorScheme() const |
| void | setColorScheme(QGraphsTheme::ColorScheme newColorScheme) |
Signal de notification :
| void | colorSchemeChanged() |
Voir aussi Qt::ColorScheme.
colorStyle : QGraphsTheme::ColorStyle
Le style des couleurs du graphique. 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 pas d'effet sur Qt Graphs for 2D.
Fonctions d'accès :
| QGraphsTheme::ColorStyle | colorStyle() const |
| void | setColorStyle(QGraphsTheme::ColorStyle newColorStyle) |
Notifier signal :
| void | colorStyleChanged(QGraphsTheme::ColorStyle type) |
Voir aussi QGraphsTheme::ColorStyle.
grid : QGraphsLine
Propriétés de style de la ligne de grille pour le graphique.
Fonctions d'accès :
| QGraphsLine | grid() const |
| void | setGrid(const QGraphsLine &newGrid) |
Signal de notification :
| void | gridChanged() |
gridVisible : bool
Cette propriété indique si les lignes de la grille sont dessinées.
Cette valeur affecte 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 de l'arrière-plan des étiquettes.
Elle n'a aucun effet si labelBackgroundVisible est false. La valeur par défaut dépend de colorScheme.
Fonctions d'accès :
| QColor | labelBackgroundColor() const |
| void | setLabelBackgroundColor(QColor newLabelBackgroundColor) |
Signal du notificateur :
| void | labelBackgroundColorChanged() |
labelBackgroundVisible : 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. 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é indique si les bordures des étiquettes sont dessinées pour les étiquettes qui ont un arrière-plan.
N'a aucun effet si labelBackgroundVisible est 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 de caractères à utiliser pour les étiquettes.
Fonctions d'accès :
| QFont | labelFont() const |
| void | setLabelFont(const QFont &newFont) |
Signal du notificateur :
| void | labelFontChanged() |
labelTextColor : QColor
Cette propriété définit la couleur de la police utilisée pour les étiquettes.
Si un axe a spécifié explicitement labelTextColor, cette propriété n'a aucun effet.
La valeur par défaut dépend de 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 dessinées ou non.
Si la valeur est false, toutes les autres propriétés de l'étiquette n'ont aucun effet. La valeur par défaut est true.
Fonctions d'accès :
| bool | labelsVisible() const |
| void | setLabelsVisible(bool newLabelsVisibility) |
Signal du notificateur :
| void | labelsVisibleChanged() |
multiHighlightColor : QColor
Cette propriété définit la couleur de mise en évidence des objets sélectionnés.
Elle est utilisée si selectionMode a le drapeau QtGraphs3D::SelectionFlag::Row ou QtGraphs3D::SelectionFlag::Column activé. La valeur par défaut dépend de 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 gradient de mise en évidence des objets sélectionnés.
Elle est utilisée si l'option QtGraphs3D::SelectionFlag::Row ou QtGraphs3D::SelectionFlag::Column est activée sur selectionMode. La valeur par défaut dépend de colorScheme.
Signal du notificateur :
| void | multiHighlightGradientQMLChanged() |
plotAreaBackgroundColor : QColor
Cette propriété définit la couleur de l'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é indique si l'arrière-plan de la zone de tracé est visible.
L'arrière-plan est dessiné en utilisant 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 s'enroule et recommence avec la première couleur de la liste.
N'a pas d'effet immédiat si colorStyle n'est pas Uniform.
Cette valeur peut être remplacée en définissant explicitement baseColor 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é définit la couleur de surbrillance d'un objet sélectionné.
Elle est utilisée si l'indicateur QtGraphs3D::SelectionFlag::Item est activé sur selectionMode. La valeur par défaut dépend de 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 gradient de mise en évidence d'un objet sélectionné.
Elle est utilisée si l'indicateur QtGraphs3D::SelectionFlag::Item est activé sur selectionMode. La valeur par défaut dépend de colorScheme.
Signal du notificateur :
| void | singleHighlightGradientQMLChanged() |
theme : QGraphsTheme::Theme
Le type du thème. Si aucun type n'est défini, le type est GraphsTheme.Theme.QtGreen. La modification du type de thème après la construction de l'élément aura pour effet de modifier 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 :
| 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>
La 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 dans l'élément Theme en QML sans 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 le dégradé de la série pour le thème.
Voir aussi 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.