QGradient Class
La classe QGradient s'utilise en association avec la fonction « QBrush » pour définir des remplissages en dégradé. En savoir plus...
| En-tête : | #include <QGradient> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake : | QT += gui |
| Hérité par : |
- Liste de tous les membres, y compris les membres hérités
- QGradient fait partie des classes de peinture et des classes partagées implicitement.
Types publics
| enum | CoordinateMode { LogicalMode, ObjectMode, StretchToDeviceMode, ObjectBoundingMode } |
| enum | Preset { WarmFlame, NightFade, SpringWarmth, JuicyPeach, YoungPassion, …, PerfectBlue } |
| enum | Spread { PadSpread, RepeatSpread, ReflectSpread } |
| enum | Type { LinearGradient, RadialGradient, ConicalGradient, NoGradient } |
Fonctions publiques
| QGradient(QGradient::Preset preset) | |
| QGradient::CoordinateMode | coordinateMode() const |
| void | setColorAt(qreal position, const QColor &color) |
| void | setCoordinateMode(QGradient::CoordinateMode mode) |
| void | setSpread(QGradient::Spread method) |
| void | setStops(const QGradientStops &stopPoints) |
| QGradient::Spread | spread() const |
| QGradientStops | stops() const |
| QGradient::Type | type() const |
| bool | operator!=(const QGradient &gradient) const |
| bool | operator==(const QGradient &gradient) const |
Éléments non-membres associés
Description détaillée
Qt prend actuellement en charge trois types de remplissages en dégradé :
- Les dégradéslinéaires interpolent les couleurs entre les points de départ et d'arrivée.
- Les dégradés radiauxsimples interpolent les couleurs entre un point focal et les points d'extrémité situés sur un cercle qui l'entoure.
- Les dégradés radiauxétendus interpolent les couleurs entre un centre et un cercle focal.
- Les dégradésconiques interpolent les couleurs autour d’un point central.
Le type d'un dégradé peut être récupéré à l'aide de la fonction ` type()`. Chacun de ces types est représenté par une sous-classe de `QGradient` :
Les couleurs d’un dégradé sont définies à l’aide de points d’arrêt de type ` QGradientStop ` ; c’est-à-dire une position et une couleur. Utilisez la fonction ` setColorAt()` pour définir un seul point d’arrêt. Vous pouvez également utiliser la fonction ` setStops()` pour définir plusieurs points d’arrêt en une seule fois. Notez que cette dernière fonction remplace l’ensemble actuel de points d’arrêt.
C’est l’ensemble complet des points d’arrêt du dégradé (accessible via la fonction stops()) qui décrit comment la zone de dégradé doit être remplie. Si aucun point d’arrêt n’a été spécifié, un dégradé allant du noir à 0 au blanc à 1 est utilisé.
Un dégradé linéaire diagonal allant du noir en (100, 100) au blanc en (200, 200) pourrait être spécifié comme suit :
QLinearGradient linearGrad(QPointF(100, 100), QPointF(200, 200));
linearGrad.setColorAt(0, Qt::black);
linearGrad.setColorAt(1, Qt::white);Un dégradé peut comporter un nombre arbitraire de points d'arrêt. Le code suivant créerait un dégradé radial commençant par du rouge au centre, puis du bleu et enfin du vert sur les bords :
QRadialGradient radialGrad(QPointF(100, 100), 100);
radialGrad.setColorAt(0, Qt::red);
radialGrad.setColorAt(0.5, Qt::blue);
radialGrad.setColorAt(1, Qt::green);Il est possible de répéter ou de refléter le dégradé en dehors de sa zone en spécifiant l’ spread method à l’aide de la fonction setSpread(). Par défaut, la zone extérieure est remplie avec la couleur du point d’arrêt le plus proche. L’ spread method, actuellement défini, peut être récupéré à l’aide de la fonction spread(). L’énumération QGradient::Spread définit trois méthodes différentes :
Notez que la fonction ` setSpread()` ne s’applique qu’aux dégradés linéaires et radiaux. En effet, le dégradé conique est fermé par définition, c’est-à-dire qu’il remplit l’intégralité du cercle de 0 à 360 degrés, tandis que la limite d’un dégradé radial ou linéaire peut être spécifiée respectivement par son rayon ou ses points d’arrêt finaux.
Les coordonnées du dégradé peuvent être spécifiées en coordonnées logiques, par rapport aux coordonnées du périphérique ou par rapport aux coordonnées du cadre de délimitation de l’objet. L’ coordinate mode peut être défini à l’aide de la fonction setCoordinateMode(). La valeur par défaut est LogicalMode, où les coordonnées du dégradé sont spécifiées de la même manière que les coordonnées de l’objet. Pour récupérer l’ coordinate mode actuellement défini, utilisez coordinateMode().
Voir également l’exemple « Les gradients » et QBrush.
Documentation sur les types de membres
enum QGradient::CoordinateMode
Cette énumération spécifie la manière dont les coordonnées du dégradé sont mappées sur le périphérique de dessin sur lequel le dégradé est utilisé.
| Constante | Valeur | Description |
|---|---|---|
QGradient::LogicalMode | 0 | Il s'agit du mode par défaut. Les coordonnées du dégradé sont définies dans l'espace logique, tout comme les coordonnées de l'objet. |
QGradient::ObjectMode | 3 | Dans ce mode, les coordonnées du dégradé sont relatives au rectangle de délimitation de l’objet en cours de dessin, avec (0,0) dans le coin supérieur gauche et (1,1) dans le coin inférieur droit de ce rectangle. Cette valeur a été ajoutée dans Qt 5.12. |
QGradient::StretchToDeviceMode | 1 | Dans ce mode, les coordonnées du dégradé sont relatives au rectangle englobant du périphérique de dessin, le point (0,0) correspondant au coin supérieur gauche et le point (1,1) au coin inférieur droit de ce rectangle. |
QGradient::ObjectBoundingMode | 2 | Ce mode est identique à ObjectMode, à la différence près que la {QBrush::transform()} {transformation du pinceau}, le cas échéant, est appliquée par rapport à l'espace logique plutôt qu'à l'espace de l'objet. Cette valeur d'énumération est obsolète et ne doit pas être utilisée dans le nouveau code. |
enum QGradient::Preset
Cette énumération définit un ensemble de préréglages prédéfinis pour QGradient, basés sur les dégradés disponibles sur https://webgradients.com/.
| Constante | Valeur |
|---|---|
QGradient::WarmFlame | 1 |
QGradient::NightFade | 2 |
QGradient::SpringWarmth | 3 |
QGradient::JuicyPeach | 4 |
QGradient::YoungPassion | 5 |
QGradient::LadyLips | 6 |
QGradient::SunnyMorning | 7 |
QGradient::RainyAshville | 8 |
QGradient::FrozenDreams | 9 |
QGradient::WinterNeva | 10 |
QGradient::DustyGrass | 11 |
QGradient::TemptingAzure | 12 |
QGradient::HeavyRain | 13 |
QGradient::AmyCrisp | 14 |
QGradient::MeanFruit | 15 |
QGradient::DeepBlue | 16 |
QGradient::RipeMalinka | 17 |
QGradient::CloudyKnoxville | 18 |
QGradient::MalibuBeach | 19 |
QGradient::NewLife | 20 |
QGradient::TrueSunset | 21 |
QGradient::MorpheusDen | 22 |
QGradient::RareWind | 23 |
QGradient::NearMoon | 24 |
QGradient::WildApple | 25 |
QGradient::SaintPetersburg | 26 |
QGradient::PlumPlate | 28 |
QGradient::EverlastingSky | 29 |
QGradient::HappyFisher | 30 |
QGradient::Blessing | 31 |
QGradient::SharpeyeEagle | 32 |
QGradient::LadogaBottom | 33 |
QGradient::LemonGate | 34 |
QGradient::ItmeoBranding | 35 |
QGradient::ZeusMiracle | 36 |
QGradient::OldHat | 37 |
QGradient::StarWine | 38 |
QGradient::HappyAcid | 41 |
QGradient::AwesomePine | 42 |
QGradient::NewYork | 43 |
QGradient::ShyRainbow | 44 |
QGradient::MixedHopes | 46 |
QGradient::FlyHigh | 47 |
QGradient::StrongBliss | 48 |
QGradient::FreshMilk | 49 |
QGradient::SnowAgain | 50 |
QGradient::FebruaryInk | 51 |
QGradient::KindSteel | 52 |
QGradient::SoftGrass | 53 |
QGradient::GrownEarly | 54 |
QGradient::SharpBlues | 55 |
QGradient::ShadyWater | 56 |
QGradient::DirtyBeauty | 57 |
QGradient::GreatWhale | 58 |
QGradient::TeenNotebook | 59 |
QGradient::PoliteRumors | 60 |
QGradient::SweetPeriod | 61 |
QGradient::WideMatrix | 62 |
QGradient::SoftCherish | 63 |
QGradient::RedSalvation | 64 |
QGradient::BurningSpring | 65 |
QGradient::NightParty | 66 |
QGradient::SkyGlider | 67 |
QGradient::HeavenPeach | 68 |
QGradient::PurpleDivision | 69 |
QGradient::AquaSplash | 70 |
QGradient::SpikyNaga | 72 |
QGradient::LoveKiss | 73 |
QGradient::CleanMirror | 75 |
QGradient::PremiumDark | 76 |
QGradient::ColdEvening | 77 |
QGradient::CochitiLake | 78 |
QGradient::SummerGames | 79 |
QGradient::PassionateBed | 80 |
QGradient::MountainRock | 81 |
QGradient::DesertHump | 82 |
QGradient::JungleDay | 83 |
QGradient::PhoenixStart | 84 |
QGradient::OctoberSilence | 85 |
QGradient::FarawayRiver | 86 |
QGradient::AlchemistLab | 87 |
QGradient::OverSun | 88 |
QGradient::PremiumWhite | 89 |
QGradient::MarsParty | 90 |
QGradient::EternalConstance | 91 |
QGradient::JapanBlush | 92 |
QGradient::SmilingRain | 93 |
QGradient::CloudyApple | 94 |
QGradient::BigMango | 95 |
QGradient::HealthyWater | 96 |
QGradient::AmourAmour | 97 |
QGradient::RiskyConcrete | 98 |
QGradient::StrongStick | 99 |
QGradient::ViciousStance | 100 |
QGradient::PaloAlto | 101 |
QGradient::HappyMemories | 102 |
QGradient::MidnightBloom | 103 |
QGradient::Crystalline | 104 |
QGradient::PartyBliss | 106 |
QGradient::ConfidentCloud | 107 |
QGradient::LeCocktail | 108 |
QGradient::RiverCity | 109 |
QGradient::FrozenBerry | 110 |
QGradient::ChildCare | 112 |
QGradient::FlyingLemon | 113 |
QGradient::NewRetrowave | 114 |
QGradient::HiddenJaguar | 115 |
QGradient::AboveTheSky | 116 |
QGradient::Nega | 117 |
QGradient::DenseWater | 118 |
QGradient::Seashore | 120 |
QGradient::MarbleWall | 121 |
QGradient::CheerfulCaramel | 122 |
QGradient::NightSky | 123 |
QGradient::MagicLake | 124 |
QGradient::YoungGrass | 125 |
QGradient::ColorfulPeach | 126 |
QGradient::GentleCare | 127 |
QGradient::PlumBath | 128 |
QGradient::HappyUnicorn | 129 |
QGradient::AfricanField | 131 |
QGradient::SolidStone | 132 |
QGradient::OrangeJuice | 133 |
QGradient::GlassWater | 134 |
QGradient::NorthMiracle | 136 |
QGradient::FruitBlend | 137 |
QGradient::MillenniumPine | 138 |
QGradient::HighFlight | 139 |
QGradient::MoleHall | 140 |
QGradient::SpaceShift | 142 |
QGradient::ForestInei | 143 |
QGradient::RoyalGarden | 144 |
QGradient::RichMetal | 145 |
QGradient::JuicyCake | 146 |
QGradient::SmartIndigo | 147 |
QGradient::SandStrike | 148 |
QGradient::NorseBeauty | 149 |
QGradient::AquaGuidance | 150 |
QGradient::SunVeggie | 151 |
QGradient::SeaLord | 152 |
QGradient::BlackSea | 153 |
QGradient::GrassShampoo | 154 |
QGradient::LandingAircraft | 155 |
QGradient::WitchDance | 156 |
QGradient::SleeplessNight | 157 |
QGradient::AngelCare | 158 |
QGradient::CrystalRiver | 159 |
QGradient::SoftLipstick | 160 |
QGradient::SaltMountain | 161 |
QGradient::PerfectWhite | 162 |
QGradient::FreshOasis | 163 |
QGradient::StrictNovember | 164 |
QGradient::MorningSalad | 165 |
QGradient::DeepRelief | 166 |
QGradient::SeaStrike | 167 |
QGradient::NightCall | 168 |
QGradient::SupremeSky | 169 |
QGradient::LightBlue | 170 |
QGradient::MindCrawl | 171 |
QGradient::LilyMeadow | 172 |
QGradient::SugarLollipop | 173 |
QGradient::SweetDessert | 174 |
QGradient::MagicRay | 175 |
QGradient::TeenParty | 176 |
QGradient::FrozenHeat | 177 |
QGradient::GagarinView | 178 |
QGradient::FabledSunset | 179 |
QGradient::PerfectBlue | 180 |
enum QGradient::Spread
Définit comment remplir la zone située en dehors de la zone de dégradé.
| Constante | Valeur | Description |
|---|---|---|
QGradient::PadSpread | 0 | La zone est remplie avec la couleur d'arrêt la plus proche. Il s'agit de la valeur par défaut. |
QGradient::RepeatSpread | 2 | Le dégradé est répété en dehors de la zone de dégradé. |
QGradient::ReflectSpread | 1 | Le dégradé est inversé en dehors de la zone de dégradé. |
Voir également spread() et setSpread().
enum QGradient::Type
Spécifie le type de dégradé.
| Constante | Valeur | Description |
|---|---|---|
QGradient::LinearGradient | 0 | Interpole les couleurs entre les points de départ et d'arrivée (QLinearGradient). |
QGradient::RadialGradient | 1 | Interpole les couleurs entre un point central et les points d’extrémité situés sur un cercle l’entourant (QRadialGradient). |
QGradient::ConicalGradient | 2 | Interpole les couleurs autour d'un point central (QConicalGradient). |
QGradient::NoGradient | 3 | Aucun dégradé n'est utilisé. |
Voir aussi type().
Documentation des fonctions membres
QGradient::QGradient(QGradient::Preset preset)
Crée un dégradé à partir d'une « preset » prédéfinie.
Le mode de coordonnées du dégradé obtenu est « QGradient::ObjectMode », ce qui permet d'appliquer le préréglage à des objets de taille arbitraire.
QGradient::CoordinateMode QGradient::coordinateMode() const
Renvoie le mode de coordonnées de ce dégradé. Le mode par défaut est « LogicalMode ».
Voir aussi setCoordinateMode().
void QGradient::setColorAt(qreal position, const QColor &color)
Crée un point d'arrêt à l'position indiquée avec l'color indiquée. La position indiquée doit être comprise entre 0 et 1.
Voir également setStops() et stops().
void QGradient::setCoordinateMode(QGradient::CoordinateMode mode)
Définit le mode de coordonnées de ce dégradé sur « mode ». Le mode par défaut est « LogicalMode ».
Voir aussi coordinateMode().
void QGradient::setSpread(QGradient::Spread method)
Spécifie l'method d'étalement à utiliser pour ce dégradé.
Notez que cette fonction n'a d'effet que sur les dégradés linéaires et radiaux.
Voir également spread().
void QGradient::setStops(const QGradientStops &stopPoints)
Remplace l'ensemble actuel de points d'arrêt par celui spécifié dans ` stopPoints`. Les positions des points doivent être comprises entre 0 et 1 et doivent être triées de la plus petite à la plus grande.
Voir également setColorAt() et stops().
QGradient::Spread QGradient::spread() const
Renvoie la méthode de diffusion utilisée par ce gradient. La valeur par défaut est PadSpread.
Voir aussi ` setSpread()`.
QGradientStops QGradient::stops() const
Renvoie les points d'arrêt de ce dégradé.
Si aucun point d'arrêt n'a été spécifié, un dégradé allant du noir (0) au blanc (1) est utilisé.
Voir également setStops() et setColorAt().
QGradient::Type QGradient::type() const
Renvoie le type de dégradé.
bool QGradient::operator!=(const QGradient &gradient) const
Renvoie « true » si le gradient est identique à celui de l'autre « gradient » spécifié ; sinon, renvoie « false ».
Voir également operator==().
bool QGradient::operator==(const QGradient &gradient) const
Renvoie ` true ` si le gradient est identique à l'autre ` gradient ` spécifié ; sinon, renvoie ` false`.
Voir également operator!=().
Éléments non membres associés
QGradientStop
Définition de type pour std::pair<qreal, QColor>.
QGradientStops
Définition de type pour QList<QGradientStop>.
© 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.





