QGradient Class
QGradient 클래스는 QBrush 와 함께 그라데이션 채우기를 지정하는 데 사용됩니다. 더 보기...
Header: | #include <QGradient> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
qmake: | QT += gui |
에 의해 상속되었습니다: |
- 상속된 멤버를 포함한 모든 멤버 목록
- QGradient는 페인팅 클래스와 암시적으로 공유되는 클래스의 일부입니다.
공용 유형
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는 현재 세 가지 유형의 그라데이션 채우기를 지원합니다:
- 선형 그라데이션은 시작점과 끝점 사이의 색을 보간합니다.
- 단순 방사형 그라데이션은 초점과 이를 둘러싼 원의 끝점 사이의 색을 보간합니다.
- 확장 방사형 그라데이션은 중심과 초점 원 사이의 색상을 보간합니다.
- 원뿔형 그라데이션은 중심점 주위의 색상을 보간합니다.
그라데이션의 유형은 type() 함수를 사용하여 검색할 수 있습니다. 각 유형은 QGradient의 서브클래스로 표현됩니다:
그라데이션의 색은 QGradientStop 유형의 정지점, 즉 위치와 색을 사용하여 정의됩니다. 단일 정지점을 정의하려면 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 열거형은 세 가지 방법을 정의합니다:
setSpread() 함수는 선형 및 방사형 그라데이션에만 적용된다는 점에 유의하세요. 그 이유는 원뿔형 그라데이션은 정의상 닫혀 있기 때문입니다. 즉, 원뿔형 그라데이션은 0~360도까지 원 전체를 채우는 반면 방사형 또는 선형 그라데이션의 경계는 각각 반경 또는 최종 정지점을 통해 지정할 수 있습니다.
그라데이션 좌표는 논리 좌표, 디바이스 좌표 기준 또는 객체 경계 상자 좌표 기준으로 지정할 수 있습니다. coordinate mode 은 setCoordinateMode() 함수를 사용하여 설정할 수 있습니다. 기본값은 LogicalMode 이며, 그라데이션 좌표는 개체 좌표와 동일한 방식으로 지정됩니다. 현재 설정된 coordinate mode 을 검색하려면 coordinateMode()을 사용합니다.
멤버 유형 문서
enum QGradient::CoordinateMode
이 열거형은 그라데이션 좌표가 그라데이션이 사용되는 페인트 장치에 매핑되는 방식을 지정합니다.
Constant | 값 | 설명 |
---|---|---|
QGradient::LogicalMode | 0 | 기본 모드입니다. 그라디언트 좌표는 개체 좌표와 마찬가지로 논리 공간으로 지정됩니다. |
QGradient::ObjectMode | 3 | 이 모드에서 그라데이션 좌표는 그려지는 개체의 경계 직사각형을 기준으로 왼쪽 상단 모서리에 (0,0), 개체 경계 직사각형의 오른쪽 하단 모서리에 (1,1)이 있습니다. 이 값은 Qt 5.12에서 추가되었습니다. |
QGradient::StretchToDeviceMode | 1 | 이 모드에서 그라데이션 좌표는 페인트 장치의 경계 직사각형을 기준으로 왼쪽 상단 모서리에 (0,0), 페인트 장치의 오른쪽 하단 모서리에 (1,1)이 있습니다. |
QGradient::ObjectBoundingMode | 2 | 이 모드는 {QBrush::transform()} {브러시 변환}(있는 경우)이 객체 공간이 아닌 논리 공간을 기준으로 적용된다는 점을 제외하면 ObjectMode와 동일합니다. 이 열거형 값은 더 이상 사용되지 않으므로 새 코드에서 사용해서는 안 됩니다. |
enum QGradient::Preset
이 열거형은 https://webgradients.com/ 의 그라데이션을 기반으로 QGradient 에 대한 사전 정의된 사전 설정 집합을 지정합니다.
Constant | 값 |
---|---|
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
그라데이션 영역 외부의 영역을 채우는 방법을 지정합니다.
Constant | 값 | 설명 |
---|---|---|
QGradient::PadSpread | 0 | 가장 가까운 정지색으로 영역이 채워집니다. 이것이 기본값입니다. |
QGradient::RepeatSpread | 2 | 그라데이션 영역 외부에서 그라데이션이 반복됩니다. |
QGradient::ReflectSpread | 1 | 그라데이션이 그라데이션 영역 외부에 반영됩니다. |
spread() 및 setSpread()도 참조하세요 .
enum QGradient::Type
그라데이션 유형을 지정합니다.
Constant | 값 | 설명 |
---|---|---|
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.