千家信息网

Qt如何实现三套样式表

发表于:2024-10-04 作者:千家信息网编辑
千家信息网最后更新 2024年10月04日,这篇文章将为大家详细讲解有关Qt如何实现三套样式表,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、前言在做各种各样的项目中,难免遇到需要设定自己界面风格样式的时候
千家信息网最后更新 2024年10月04日Qt如何实现三套样式表

这篇文章将为大家详细讲解有关Qt如何实现三套样式表,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

一、前言

在做各种各样的项目中,难免遇到需要设定自己界面风格样式的时候,而Qt提供的qss就是牛逼的为了实现定制各种各样的皮肤的,其实一个完美的UI界面,主要由两大块组成,一个是颜色搭配,一个是布局,这两个缺一不可,一般是交给专业的美工妹妹来做,大部分程序员审美不是很好,所以在没有美工妹妹的时候,需要去一些专业的UI界面网站寻找灵感。关于颜色搭配和布局这两点,很多人有个误区,以为只需要qss放进去就行,其实不行的,如果按钮文本框放的难看,一样看起来也是碍眼,还需要慢慢调整各种人机交互的控件的位置才行。

之前用Qt做过一个皮肤生成器,可以用它来快速制作皮肤,最快的时候一套皮肤只需要58秒钟,用皮肤生成器制作皮肤,基本上不超过一分钟就可以生成一套自己想要的皮肤,只要设置八种颜色即可。本人非常喜欢这套黑色风格样式皮肤,特意分享出来,其中还有其他两套皮肤,一套是淡蓝色风格,一套是白色扁平风格,欢迎各位拿去随意使用。

二、代码思路

//使用方法void frmMain::initStyle(){    //加载样式表    //QFile file(":/qss/psblack.css");    //QFile file(":/qss/flatwhite.css");    QFile file(":/qss/lightblue.css");    if (file.open(QFile::ReadOnly)) {        QString qss = QLatin1String(file.readAll());        QString paletteColor = qss.mid(20, 7);        qApp->setPalette(QPalette(QColor(paletteColor)));        qApp->setStyleSheet(qss);        file.close();    }}

三、效果图

关于"Qt如何实现三套样式表"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

0