QGradient Class
La classe QGradient est utilisée en combinaison avec QBrush pour spécifier des remplissages en dégradé. Plus d'informations...
| En-tête : | #include <QGradient> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Gui)target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake : | QT += gui |
| Héritée 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 |
Non-membres apparentés
Description détaillée
Qt prend actuellement en charge trois types de remplissage par gradient :
- 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é d'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(). Chaque type 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 du 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 des points d'arrêt.
C'est l'ensemble des points d'arrêt du dégradé (accessibles via la fonction stops()) qui décrit la manière dont 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 à (100, 100) au blanc à (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 avoir un nombre arbitraire de points d'arrêt. L'exemple suivant créerait un dégradé radial commençant par le rouge au centre, puis le bleu et le 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'adresse spread method à l'aide de la fonction setSpread(). Par défaut, la zone extérieure est remplacée par la couleur du point d'arrêt le plus proche. La fonction spread() permet de récupérer la valeur actuellement définie pour spread method. L'énumération QGradient::Spread définit trois méthodes différentes :
Notez que la fonction setSpread() n'a d'effet que pour les dégradés linéaires et radiaux. La raison en est que le gradient conique est fermé par définition, c'est-à-dire qu'il remplit tout le cercle de 0 à 360 degrés, alors que la limite d'un gradient radial ou linéaire peut être spécifiée par son rayon ou ses points d'arrêt finaux, respectivement.
Les coordonnées du dégradé peuvent être spécifiées en coordonnées logiques, par rapport aux coordonnées de l'appareil ou par rapport aux coordonnées de la boîte de délimitation de l'objet. L'adresse coordinate mode peut être définie à l'aide de la fonction setCoordinateMode(). La valeur par défaut est LogicalMode, où les coordonnées du gradient sont spécifiées de la même manière que les coordonnées de l'objet. Pour récupérer la valeur actuelle de coordinate mode, utilisez la fonction coordinateMode().
Voir également l 'exemple des gradients et QBrush.
Documentation sur les types de membres
enum QGradient::CoordinateMode
Cette énumération spécifie comment les coordonnées du dégradé s'appliquent au dispositif de peinture 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 spécifiées 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 dessiné, avec (0,0) dans le coin supérieur gauche et (1,1) dans le coin inférieur droit du rectangle de délimitation de l'objet. 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 de délimitation du dispositif de peinture, avec (0,0) dans le coin supérieur gauche et (1,1) dans le coin inférieur droit du dispositif de peinture. |
QGradient::ObjectBoundingMode | 2 | Ce mode est identique à ObjectMode, sauf que la {QBrush::transform()} {transformation de pinceau}, le cas échéant, est appliquée par rapport à l'espace logique au lieu de l'espace objet. Cette valeur est obsolète et ne doit pas être utilisée dans un nouveau code. |
enum QGradient::Preset
Cette énumération spécifie un ensemble de préréglages prédéfinis pour QGradient, basés sur les gradients de 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
Spécifie comment la zone située en dehors de la zone de gradient doit être remplie.
| 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 reflété en dehors de la zone de dégradé. |
Voir également spread() et setSpread().
enum QGradient::Type
Spécifie le type de gradient.
| 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 focal et les points d'extrémité d'un cercle qui l'entoure (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)
Construit un gradient basé sur une valeur prédéfinie preset.
Le mode de coordonnées du dégradé résultant 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 également setCoordinateMode().
void QGradient::setColorAt(qreal position, const QColor &color)
Crée un point d'arrêt à l'adresse position avec l'adresse color. L'adresse position doit être comprise entre 0 et 1.
Voir aussi setStops() et stops().
void QGradient::setCoordinateMode(QGradient::CoordinateMode mode)
Définit le mode de coordonnées de ce dégradé à mode. Le mode par défaut est LogicalMode.
Voir également coordinateMode().
void QGradient::setSpread(QGradient::Spread method)
Spécifie l'étalement method qui doit être utilisé pour ce gradient.
Notez que cette fonction n'a d'effet que pour les gradients linéaires et radiaux.
Voir également spread().
void QGradient::setStops(const QGradientStops &stopPoints)
Remplace le jeu actuel de points d'arrêt par le jeu donné stopPoints. Les positions des points doivent être comprises entre 0 et 1 et doivent être triées en commençant par le point le plus bas.
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 gradient.
bool QGradient::operator!=(const QGradient &gradient) const
Renvoie true si le gradient est le même que l'autre gradient spécifié ; sinon, renvoie false.
Voir aussi operator==().
bool QGradient::operator==(const QGradient &gradient) const
Renvoie true si le gradient est le même que l'autre gradient spécifié ; sinon, renvoie false.
Voir également operator!=().
Non-membres apparentés
QGradientStop
Typedef pour std::pair<qreal, QColor>.
QGradientStops
Typedef 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.





