QT-常用函数参数详解之painter->fillRect(),预设值的颜色展示
项目场景:
在使用qt中的painter直接进行绘制时,有时会用到fillrect进行填充矩形的展示,此函数预设了很多的颜色,在网上我暂时没找到直接能够查看的颜色展示,在此我写一个程序用于直接展示出来,截图在此,方便自己以及有一样需求的人直接查看
代码描述:
通过生成pdf以及保存pdf的方式,直接调用QPdfWriter,QPrinter这两种库,进行编程展示。需要提前引入printsupport的插件(和gui,charts差不多的东西)。最终代码以及展示结果见正文,不想看的也可以直接看结果。(QT5.12.5以上版本才有)
1.fillRect代码和预设值有关的函数
inline void fillRect(int x, int y, int w, int h, QGradient::Preset preset);
inline void fillRect(const QRect &r, QGradient::Preset preset);
inline void fillRect(const QRectF &r, QGradient::Preset preset);
2.展示代码
//设置pdf保存的路径QString file_path = pdfSaveAs(QString::fromLocal8Bit("展示QGradient预设值"));if(file_path.isEmpty())return;QFile pdfFile(file_path);pdfFile.open(QIODevice::WriteOnly);QPdfWriter* pWriter = new QPdfWriter(&pdfFile);//Init PagepWriter->setPageSize(QPagedPaintDevice::A4);pWriter->setResolution(300); //设置dpi 每个平方英寸像素为300pWriter->setPageMargins(QMarginsF(30, 30, 30, 30));QPainter* pPainter = new QPainter(pWriter);//Painter PDFqDebug() << pPainter->viewport();int nPDFWidth = pPainter->viewport().width();int nPDFHeight = pPainter->viewport().height();//test startint realcolor = 0;int realheight = 0;while (realcolor < 180){realcolor++;QGradient::Preset a = QGradient::Preset(realcolor);pPainter->fillRect(QRect(0, realheight, nPDFWidth, 100), a);pPainter->setFont(QFont("黑体", 26, 60));pPainter->drawText(QRect(0, realheight, nPDFWidth, 100), Qt::AlignCenter,QString::fromLocal8Bit("测试预设颜色%1").arg(realcolor));realheight += 100;if (realheight >= nPDFHeight){pWriter->newPage();realheight = 0;}}//test end//绘制完毕delete pPainter;delete pWriter;pdfFile.close();//通过其它PDF阅读器来打开PDFQDesktopServices::openUrl(QUrl::fromLocalFile(file_path));
结果图展示:
enum Preset {WarmFlame = 1,NightFade = 2,SpringWarmth = 3,JuicyPeach = 4,YoungPassion = 5,LadyLips = 6,SunnyMorning = 7,RainyAshville = 8,FrozenDreams = 9,WinterNeva = 10,DustyGrass = 11,TemptingAzure = 12,HeavyRain = 13,AmyCrisp = 14,MeanFruit = 15,DeepBlue = 16,RipeMalinka = 17,CloudyKnoxville = 18,MalibuBeach = 19,NewLife = 20,TrueSunset = 21,MorpheusDen = 22,RareWind = 23,NearMoon = 24,WildApple = 25,SaintPetersburg = 26,PlumPlate = 28,EverlastingSky = 29,HappyFisher = 30,Blessing = 31,SharpeyeEagle = 32,LadogaBottom = 33,LemonGate = 34,ItmeoBranding = 35,ZeusMiracle = 36,OldHat = 37,StarWine = 38,HappyAcid = 41,AwesomePine = 42,NewYork = 43,ShyRainbow = 44,MixedHopes = 46,FlyHigh = 47,StrongBliss = 48,FreshMilk = 49,SnowAgain = 50,FebruaryInk = 51,KindSteel = 52,SoftGrass = 53,GrownEarly = 54,SharpBlues = 55,ShadyWater = 56,DirtyBeauty = 57,GreatWhale = 58,TeenNotebook = 59,PoliteRumors = 60,SweetPeriod = 61,WideMatrix = 62,SoftCherish = 63,RedSalvation = 64,BurningSpring = 65,NightParty = 66,SkyGlider = 67,HeavenPeach = 68,PurpleDivision = 69,AquaSplash = 70,SpikyNaga = 72,LoveKiss = 73,CleanMirror = 75,PremiumDark = 76,ColdEvening = 77,CochitiLake = 78,SummerGames = 79,PassionateBed = 80,MountainRock = 81,DesertHump = 82,JungleDay = 83,PhoenixStart = 84,OctoberSilence = 85,FarawayRiver = 86,AlchemistLab = 87,OverSun = 88,PremiumWhite = 89,MarsParty = 90,EternalConstance = 91,JapanBlush = 92,SmilingRain = 93,CloudyApple = 94,BigMango = 95,HealthyWater = 96,AmourAmour = 97,RiskyConcrete = 98,StrongStick = 99,ViciousStance = 100,PaloAlto = 101,HappyMemories = 102,MidnightBloom = 103,Crystalline = 104,PartyBliss = 106,ConfidentCloud = 107,LeCocktail = 108,RiverCity = 109,FrozenBerry = 110,ChildCare = 112,FlyingLemon = 113,NewRetrowave = 114,HiddenJaguar = 115,AboveTheSky = 116,Nega = 117,DenseWater = 118,Seashore = 120,MarbleWall = 121,CheerfulCaramel = 122,NightSky = 123,MagicLake = 124,YoungGrass = 125,ColorfulPeach = 126,GentleCare = 127,PlumBath = 128,HappyUnicorn = 129,AfricanField = 131,SolidStone = 132,OrangeJuice = 133,GlassWater = 134,NorthMiracle = 136,FruitBlend = 137,MillenniumPine = 138,HighFlight = 139,MoleHall = 140,SpaceShift = 142,ForestInei = 143,RoyalGarden = 144,RichMetal = 145,JuicyCake = 146,SmartIndigo = 147,SandStrike = 148,NorseBeauty = 149,AquaGuidance = 150,SunVeggie = 151,SeaLord = 152,BlackSea = 153,GrassShampoo = 154,LandingAircraft = 155,WitchDance = 156,SleeplessNight = 157,AngelCare = 158,CrystalRiver = 159,SoftLipstick = 160,SaltMountain = 161,PerfectWhite = 162,FreshOasis = 163,StrictNovember = 164,MorningSalad = 165,DeepRelief = 166,SeaStrike = 167,NightCall = 168,SupremeSky = 169,LightBlue = 170,MindCrawl = 171,LilyMeadow = 172,SugarLollipop = 173,SweetDessert = 174,MagicRay = 175,TeenParty = 176,FrozenHeat = 177,GagarinView = 178,FabledSunset = 179,PerfectBlue = 180,NumPresets};
QT-常用函数参数详解之painter->fillRect(),预设值的颜色展示相关推荐
- oracle11g 常用函数(Functions)详解
Oracle11g常用函数(Functions)详解 目录 ABS. 3 ACOS. 3 ADD_MONTHS. 4 ASCII 4 ASCIISTR. 5 ASIN.. 5 ATAN.. 5 ATA ...
- python中def func是什么意思_Python的函数参数详解
原标题:Python的函数参数详解 前言 Python中函数的参数可以分为两大类形参和实参~ def func(x, y): # x, y 就是形参 print(x, y) func(2, 3) # ...
- PHP date函数参数详解
PHP date函数参数详解 作者: 字体:[增加 减小] 类型:转载 time()在PHP中是得到一个数字,这个数字表示从1970-01-01到现在共走了多少秒,很奇怪吧 不过这样方便计算, 要找 ...
- JVM之常用基础参数详解
JVM之常用基础参数详解 目录 常用基础参数内存Xms,Xmx讲解 常用基础参数栈内存Xss讲解 常用基础参数元空间MetaspaceSize讲解 常用基础参数PrintGCDetails回收前后对比 ...
- java调用js匿名函数参数,js匿名函数作为函数参数详解
由衷的感叹,js真是烦. 学到现在,渐渐理解了什么是:语言都是通用的,没有好不好,只有擅长不擅长. 继承,多态,甚至指针,c能实现,c++,java有,javascript(和java是雷锋和雷峰塔的 ...
- matlab melbankm,Matlab v_melbankm函数参数详解(英文附例)
Matlab v_melbankm函数参数详解(英文附例) 笔者使用的是R2019的matlab,下载了voicebox安装至matlab路径下即可使用.下载voicebox请参看此博客 需要注意的是 ...
- ioctl 函数 参数 详解
2019独角兽企业重金招聘Python工程师标准>>> ioctl 函数 参数 详解 2009-04-24 11:55 ioctl函数 本函数影响由fd参数引用的一个打开的文件. # ...
- 定义一个没有参数的函数、输出python3次_Python函数参数详解,三天让你掌握python,不再是小白
原标题:Python函数参数详解,三天让你掌握python,不再是小白 引言 随着程序功能的增多,代码量随之增大,此时仍不加区分地把所有功能的实现代码放到一起,将会使得程序的组织结构不清晰,可读性变差 ...
- Matlab mfcc函数参数详解(英文附例)
Matlab mfcc函数参数详解 其实可以直接打开源代码看哈. %MFCC Extract the mfcc, log-energy, delta, and delta-delta of audio ...
- python传入参数加星号_Python 带星号(* 或 **)的函数参数详解
1. 带默认值的参数 在了解带星号(*)的参数之前,先看下带有默认值的参数,函数定义如下: >> def defaultValueArgs(common, defaultStr = &qu ...
最新文章
- 云网融合 — 云网融合与云网一体化
- 字符串扩展_JAVA
- 1470. Shuffle the Array
- asp.net跨页面传值收集
- 微信小程序实现数字为四位一组间隔(仿银行卡卡号)
- Flink报错:java.io.IOException: Insufficient number of network buffers
- 三网融合催生第三方数据服务产业
- 机器学习基础(二十四)—— Random Forest
- 阿里云成为云原生计算基金会金牌会员
- jquery 时间选择插件-jedate
- 3D动画展示--3D图片旋转展示
- Android显示gif格式图片
- sql中的类型转换---学习
- IDEA重置maven配置的问题解决
- Web前端--HTML+CSS+JS新型冠状病毒射击小游戏
- csp认证考试准备Day-3
- PW系列 | 用windres 编译.rc 资源文件
- C# 开发ModBus的服务器程序 实现ModBus数据总站 搭建自定义的Modbus服务器 同时支持tcp和rtu...
- OpenGL--混合
- 微信公众号开发——现金红包、企业付款