QGradient Class
QGradient クラスは、QBrush と組み合わせて、グラデーション塗りつぶしを指定するために使用します。詳細...
ヘッダー | #include <QGradient> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
qmake: | QT += gui |
によって継承されています: |
- 継承メンバを含む全メンバ一覧
- QGradientは、Painting ClassesおよびImplicitly Shared Classesの一部です。
パブリックタイプ
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 } |
パブリック関数
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 |
関連する非メンバー
詳しい説明
Qt は現在、3 種類のグラデーション塗りをサポートしています:
- 線形グラデーションは、始点と終点の間で色を補間します。
- 単純な放射状グラデーションは、焦点とそれを囲む円上の端点の間の色を補間します。
- 拡張放射状グラデーションは、中心と焦点となる円の間の色を補間します。
- 円錐グラデーションは、中心点を中心に色を補間します。
グラデーションのタイプはtype() 関数で取得できます。各タイプはQGradientのサブクラスで表されます:
グラデーションの色は、QGradientStop タイプの停止点、つまり位置と色を使って定義されます。1つのストップ・ポイントを定義するには、setColorAt() 関数を使用します。また、setStops() 関数を使用して、一度に複数のストップポイントを定義することもできます。後者の関数は、現在の停止点のセットを置き換えることに注意してください。
グラデーション領域がどのように塗りつぶされるべきかを記述するのは、グラデーションの完全な停止点セット(stops ()関数を通してアクセス可能)です。停止点が指定されていない場合、0 の黒から 1 の白へのグラデーションが使用されます。
(100, 100)の黒から(200, 200)の白への斜めの直線グラデーションはこのように指定できます:
QLinearGradient linearGrad(QPointF(100, 100), QPointF(200, 200)); linearGrad.setColorAt(0, Qt::black); linearGrad.setColorAt(1, Qt::white);
グラデーションは任意の数の停止点を持つことができます。グラデーションは、任意の数の停止点を持つことができます。次のようにすると、中央の赤から始まり、青、そして端の緑へと放射状のグラデーションが作成されます:
QRadialGradient radialGrad(QPointF(100, 100), 100); radialGrad.setColorAt(0, Qt::red); radialGrad.setColorAt(0.5, Qt::blue); radialGrad.setColorAt(1, Qt::green);
setSpread() 関数を使用してspread method を指定することで、グラデーションをその領域の外側で繰り返したり反映させたりすることができます。デフォルトでは、最も近い停止点の色で外側を塗りつぶします。現在設定されているspread method は、spread() 関数を使用して取得できます。QGradient::Spread enumは3つの異なるメソッドを定義しています:
setSpread()関数は、線形グラデーションと放射状グラデーションに対してのみ有効であることに注意。その理由は、円錐勾配は定義上閉じているからである。つまり、円錐勾配は0度から360度までの円全体を埋めるが、放射状勾配や直線勾配の境界は、それぞれ半径や最終停止点を通して指定することができる。
グラデーション座標は、論理座標、デバイス座標に対する相対座標、またはオブジェクトのバウンディングボックス座標に対する相対座標で指定できます。coordinate mode はsetCoordinateMode() 関数で設定できます。デフォルトはLogicalMode で、グラデーション座標はオブジェクト座標と同じ方法で指定されます。現在設定されているcoordinate mode を取得するには、coordinateMode() を使用します。
The Gradients ExampleおよびQBrushも参照してください 。
メンバ型ドキュメント
enum QGradient::CoordinateMode
この列挙型は、グラデーション座標が、グラデーションが使用されるペイントデバイスにどのようにマッピングされるかを指定する。
定数 | 値 | 説明 |
---|---|---|
QGradient::LogicalMode | 0 | これはデフォルトのモードです。グラデーション座標は、オブジェクト座標と同様に論理空間で指定されます。 |
QGradient::ObjectMode | 3 | このモードでは、グラデーション座標は描画されるオブジェクトの外接矩形からの相対座標となり、オブジェクトの外接矩形の左上隅を(0,0)、右下隅を(1,1)とします。この値は Qt 5.12 で追加されました。 |
QGradient::StretchToDeviceMode | 1 | このモードでは、グラデーション座標はペイント・デバイスの外接矩形からの相対座標となり、(0,0)はペイント・デバイスの左上隅、(1,1)は右下隅となります。 |
QGradient::ObjectBoundingMode | 2 | このモードは ObjectMode と同じですが、{QBrush::transform()} {ブラシ変換} がある場合は、オブジェクト空間ではなく論理空間に対して相対的に適用されます。この列挙値は非推奨であり、新しいコードでは使用しないでください。 |
enum QGradient::Preset
この列挙型は、https://webgradients.com/ からのグラデーションに基づいて、QGradient のための事前定義されたプリセットのセットを指定する。
定数 | 値 |
---|---|
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
グラデーション領域の外側をどのように塗りつぶすかを指定する。
定数 | 値 | 説明 |
---|---|---|
QGradient::PadSpread | 0 | 最も近いストップカラーで塗りつぶされます。これはデフォルトです。 |
QGradient::RepeatSpread | 2 | グラデーションはグラデーション領域の外側で繰り返されます。 |
QGradient::ReflectSpread | 1 | グラデーションはグラデーション領域の外側に反映されます。 |
enum QGradient::Type
グラデーションの種類を指定する。
定数 | 値 | 説明 |
---|---|---|
QGradient::LinearGradient | 0 | 始点と終点間の色を補間します (QLinearGradient)。 |
QGradient::RadialGradient | 1 | 中心点とそれを囲む円上の端点間の色を補間します (QRadialGradient)。 |
QGradient::ConicalGradient | 2 | 中心点を中心に色を補間します (QConicalGradient)。 |
QGradient::NoGradient | 3 | グラデーションは使わない。 |
type()も参照 。
メンバ関数ドキュメント
QGradient::QGradient(QGradient::Preset preset)
定義済みのpreset に基づいてグラデーションを構築します。
QGradient::ObjectModeこ のプ リ セ ッ ト は任意のオブジ ェ ク ト のサ イ ズに適用で き ます。
QGradient::CoordinateMode QGradient::coordinateMode() const
このグラデ ィエ ン ト の座標モー ド を返 し ます。デフォルトのモードはLogicalMode です。
setCoordinateMode()も参照して ください。
void QGradient::setColorAt(qreal position, const QColor &color)
与えられたcolor で、与えられたposition に停止点を作成します。与えられたposition は 0 から 1 の範囲でなければならない。
void QGradient::setCoordinateMode(QGradient::CoordinateMode mode)
こ のグ ラデ ィ エ ン ト の座標モー ド をmode に設定 し ます。 デフ ォル ト モー ド はLogicalMode です。
coordinateMode()も参照 。
void QGradient::setSpread(QGradient::Spread method)
このグラデーションに使用するスプレッドmethod を指定します。
この関数は線形グラデーションと放射状グラデーションに対してのみ有効であることに注意してください。
spread()も参照 。
void QGradient::setStops(const QGradientStops &stopPoints)
現在の停止点のセットを、与えられたstopPoints で置き換える。点の位置は 0 から 1 の範囲でなければならず、最も低い点を先頭にソートされなければならない。
setColorAt() およびstops()も参照 。
QGradient::Spread QGradient::spread() const
このグラデーションが使用するスプレッドメソッドを返します。デフォルトはPadSpread 。
setSpread()も参照 ください。
QGradientStops QGradient::stops() const
このグラデーションの停止点を返します。
停止点が指定されていない場合は、0 を黒、1 を白とするグラデーションが使用されます。
setStops() およびsetColorAt()も参照 。
QGradient::Type QGradient::type() const
グラデーションの種類を返します。
bool QGradient::operator!=(const QGradient &gradient) const
グラデーションが指定された他のgradient と同じであればtrue
を返し、そうでなければfalse
を返す。
operator==()も参照 。
bool QGradient::operator==(const QGradient &gradient) const
グラデーションが指定された他のgradient と同じであればtrue
を返し、そうでなければfalse
を返す。
operator!=()も参照 。
© 2025 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.