QGradient Class
Die Klasse „QGradient“ wird in Verbindung mit „ QBrush “ verwendet, um Farbverlaufsfüllungen festzulegen. Mehr...
| Header: | #include <QGradient> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake: | QT += gui |
| Vererbt an: | QConicalGradient, „ QLinearGradient “ sowie QRadialGradient |
- Liste aller Mitglieder, einschließlich geerbter Mitglieder
- QGradient gehört zu den Mal-Klassen und den implizit gemeinsam genutzten Klassen.
Öffentliche Typen
| 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 } |
Öffentliche Funktionen
| 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 |
Verwandte Nicht-Mitglieder
Ausführliche Beschreibung
Qt unterstützt derzeit drei Arten von Farbverlaufsfüllungen:
- Lineare Farbverläufe interpolieren Farben zwischen Start- und Endpunkt.
- Einfache radiale Farbverläufe interpolieren Farben zwischen einem Mittelpunkt und Endpunkten auf einem ihn umgebenden Kreis.
- Erweiterte radiale Farbverläufe interpolieren Farben zwischen einem Mittelpunkt und einem Fokuskreis.
- Konische Farbverläufe interpolieren Farben um einen Mittelpunkt herum.
Der Typ eines Farbverlaufs kann mithilfe der Funktion ` type()` abgerufen werden. Jeder der Typen wird durch eine Unterklasse von `QGradient` repräsentiert:
Die Farben in einem Farbverlauf werden mithilfe von Haltepunkten vom Typ ` QGradientStop ` definiert, d. h. einer Position und einer Farbe. Verwenden Sie die Funktion ` setColorAt()` (), um einen einzelnen Haltepunkt zu definieren. Alternativ können Sie die Funktion ` setStops()` () verwenden, um mehrere Haltepunkte auf einmal zu definieren. Beachten Sie, dass die letztgenannte Funktion den aktuellen Satz von Haltepunkten ersetzt.
Es ist der vollständige Satz von Haltepunkten des Farbverlaufs (abrufbar über die Funktion ` stops()`), der beschreibt, wie der Farbverlaufsbereich gefüllt werden soll. Wenn keine Haltepunkte angegeben wurden, wird ein Farbverlauf von Schwarz bei 0 bis Weiß bei 1 verwendet.
Ein diagonaler linearer Farbverlauf von Schwarz bei (100, 100) nach Weiß bei (200, 200) könnte wie folgt festgelegt werden:
QLinearGradient linearGrad(QPointF(100, 100), QPointF(200, 200));
linearGrad.setColorAt(0, Qt::black);
linearGrad.setColorAt(1, Qt::white);Ein Farbverlauf kann eine beliebige Anzahl von Haltepunkten haben. Der folgende Code würde einen radialen Farbverlauf erzeugen, der in der Mitte mit Rot beginnt, dann in Blau übergeht und an den Rändern in Grün endet:
QRadialGradient radialGrad(QPointF(100, 100), 100);
radialGrad.setColorAt(0, Qt::red);
radialGrad.setColorAt(0.5, Qt::blue);
radialGrad.setColorAt(1, Qt::green);Es ist möglich, den Farbverlauf außerhalb seines Bereichs zu wiederholen oder zu spiegeln, indem die „ spread method “ mithilfe der Funktion „ setSpread()“ festgelegt wird. Standardmäßig wird der Außenbereich mit der Farbe des nächstgelegenen Haltepunkts aufgefüllt. Die aktuell eingestellte „ spread method “ kann mit der Funktion „ spread()“ abgerufen werden. Die Enumeration „ QGradient::Spread “ definiert drei verschiedene Methoden:
Beachten Sie, dass die Funktion „ setSpread()“ nur bei linearen und radialen Farbverläufen wirksam ist. Der Grund dafür ist, dass der konische Farbverlauf per Definition geschlossen ist, d. h., der konische Farbverlauf füllt den gesamten Kreis von 0 bis 360 Grad aus, während die Begrenzung eines radialen oder linearen Farbverlaufs durch dessen Radius bzw. die Endpunkte festgelegt werden kann.
Die Gradientenkoordinaten können in logischen Koordinaten, relativ zu den Gerätekoordinaten oder relativ zu den Koordinaten des Begrenzungsrahmens des Objekts angegeben werden. Die „ coordinate mode “ können mit der Funktion „ setCoordinateMode()“ festgelegt werden. Die Standardeinstellung ist „ LogicalMode “, wobei die Gradientenkoordinaten auf dieselbe Weise wie die Objektkoordinaten angegeben werden. Um die aktuell eingestellten „ coordinate mode “ abzurufen, verwenden Sie „ coordinateMode()“.
Siehe auch das Beispiel „Gradienten“ und QBrush.
Dokumentation zum Mitgliedstyp
enum QGradient::CoordinateMode
Diese Enumeration legt fest, wie die Koordinaten des Farbverlaufs auf das Zeichen-Gerät abgebildet werden, auf dem der Farbverlauf verwendet wird.
| Konstante | Wert | Beschreibung |
|---|---|---|
QGradient::LogicalMode | 0 | Dies ist der Standardmodus. Die Farbverlaufskoordinaten werden genau wie die Objektkoordinaten im logischen Raum angegeben. |
QGradient::ObjectMode | 3 | In diesem Modus beziehen sich die Farbverlaufskoordinaten auf das Begrenzungsrechteck des zu zeichnenden Objekts, wobei (0,0) in der oberen linken Ecke und (1,1) in der unteren rechten Ecke des Begrenzungsrechtecks des Objekts liegt. Dieser Wert wurde in Qt 5.12 hinzugefügt. |
QGradient::StretchToDeviceMode | 1 | In diesem Modus beziehen sich die Gradientenkoordinaten auf das Begrenzungsrechteck des Zeichen-Geräts, wobei (0,0) in der oberen linken Ecke und (1,1) in der unteren rechten Ecke des Begrenzungsrechtecks des Zeichen-Geräts liegt. |
QGradient::ObjectBoundingMode | 2 | Dieser Modus entspricht dem „ObjectMode“, mit dem Unterschied, dass die {QBrush::transform()} {Pinseltransformation}, falls vorhanden, relativ zum logischen Raum statt zum Objektraum angewendet wird. Dieser Enum-Wert ist veraltet und sollte in neuem Code nicht mehr verwendet werden. |
enum QGradient::Preset
Diese Enumeration definiert eine Reihe vordefinierter Voreinstellungen für „ QGradient “, die auf den Farbverläufen von https://webgradients.com/ basieren.
| Konstante | Wert |
|---|---|
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
Legt fest, wie der Bereich außerhalb des Farbverlaufsbereichs gefüllt werden soll.
| Konstante | Wert | Beschreibung |
|---|---|---|
QGradient::PadSpread | 0 | Der Bereich wird mit der am besten passenden Stoppfarbe gefüllt. Dies ist die Standardeinstellung. |
QGradient::RepeatSpread | 2 | Der Farbverlauf wird außerhalb des Farbverlaufsbereichs wiederholt. |
QGradient::ReflectSpread | 1 | Der Farbverlauf wird außerhalb des Farbverlaufsbereichs gespiegelt. |
Siehe auch spread() und setSpread().
enum QGradient::Type
Legt die Art des Farbverlaufs fest.
| Konstante | Wert | Beschreibung |
|---|---|---|
QGradient::LinearGradient | 0 | Interpoliert Farben zwischen Start- und Endpunkt (QLinearGradient). |
QGradient::RadialGradient | 1 | Interpoliert Farben zwischen einem Brennpunkt und den Endpunkten auf einem ihn umgebenden Kreis (QRadialGradient). |
QGradient::ConicalGradient | 2 | Interpoliert Farben um einen Mittelpunkt herum (QConicalGradient). |
QGradient::NoGradient | 3 | Es wird kein Farbverlauf verwendet. |
Siehe auch type().
Dokumentation der Mitgliedsfunktionen
QGradient::QGradient(QGradient::Preset preset)
Erzeugt einen Farbverlauf auf der Grundlage eines vordefinierten preset.
Der Koordinatenmodus des resultierenden Farbverlaufs ist „ QGradient::ObjectMode “, wodurch die Voreinstellung auf beliebige Objektgrößen angewendet werden kann.
QGradient::CoordinateMode QGradient::coordinateMode() const
Gibt den Koordinatenmodus dieses Farbverlaufs zurück. Der Standardmodus ist „ LogicalMode “.
Siehe auch „ setCoordinateMode()“.
void QGradient::setColorAt(qreal position, const QColor &color)
Erzeugt einen Haltepunkt an der angegebenen Koordinate ` position ` mit dem angegebenen Winkel ` color`. Der angegebene Winkel ` position ` muss im Bereich von 0 bis 1 liegen.
Siehe auch setStops() und stops().
void QGradient::setCoordinateMode(QGradient::CoordinateMode mode)
Legt den Koordinatenmodus dieses Farbverlaufs auf „ mode “ fest. Der Standardmodus ist „ LogicalMode “.
Siehe auch „ coordinateMode()“.
void QGradient::setSpread(QGradient::Spread method)
Legt den für diesen Farbverlauf zu verwendenden Spread- method fest.
Beachten Sie, dass diese Funktion nur bei linearen und radialen Farbverläufen wirksam ist.
Siehe auch ` spread()`.
void QGradient::setStops(const QGradientStops &stopPoints)
Ersetzt die aktuellen Haltepunkte durch die angegebenen stopPoints. Die Positionen der Punkte müssen im Bereich von 0 bis 1 liegen und so sortiert sein, dass der niedrigste Punkt an erster Stelle steht.
Siehe auch „ setColorAt()“ und „ stops()“.
QGradient::Spread QGradient::spread() const
Gibt die von diesem Gradienten verwendete Spread-Methode zurück. Der Standardwert ist „ PadSpread “.
Siehe auch ` setSpread()`.
QGradientStops QGradient::stops() const
Gibt die Haltepunkte für diesen Farbverlauf zurück.
Wenn keine Haltepunkte angegeben wurden, wird ein Farbverlauf von Schwarz bei 0 bis Weiß bei 1 verwendet.
Siehe auch setStops() und setColorAt().
QGradient::Type QGradient::type() const
Gibt den Typ des Farbverlaufs zurück.
bool QGradient::operator!=(const QGradient &gradient) const
Gibt „ true “ zurück, wenn der Gradient mit dem anderen angegebenen „ gradient “ übereinstimmt; andernfalls wird „ false “ zurückgegeben.
Siehe auch „ operator==()“.
bool QGradient::operator==(const QGradient &gradient) const
Gibt „ true “ zurück, wenn der Gradient mit dem anderen angegebenen „ gradient “ übereinstimmt; andernfalls wird „ false “ zurückgegeben.
Siehe auch operator!=().
Verwandte Nicht-Mitglieder
QGradientStop
Typedef für std::pair<qreal, QColor>.
QGradientStops
Typedef für 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.





