QPalette是一款非常好用的颜色设置工具:

头文件:#include <QPalette> (^-^我没有用这个头文件也可以使用QPalette)

常用函数:

void    setBrush(ColorRole role, const QBrush & brush)
void setBrush(ColorGroup group, ColorRole role, const QBrush & brush)
void setColor(ColorGroup group, ColorRole role, const QColor & color)
void setColor(ColorRole role, const QColor & color)
  • 1
  • 2
  • 3
  • 4

ColorGroup属性:

enum QPalette::​ColorGroup
Constant Value Description
QPalette::Disabled 1
QPalette::Active 0
QPalette::Inactive 2
QPalette::Normal Active synonym for Active
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

ColorRole属性:

QPalette::Window            背景颜色
QPalette::WindowText 文本颜色
QPalette::Background 同QPalette::Window
QPalette::Foreground 同QPalette::WindowText
QPalette::Base 主要用作文本输入小部件的背景颜色,也可以用于其他,如combobox下拉列表
和toolbar的背景多为白色或另一种浅色。
QPalette::AlternateBase 在交替行颜色的视图中作为交替背景色
QPalette::ToolTipBase QToolTip和QWhatsThis的背景色
QPalette::ToolTipText QToolTip和QWhatsThis的前景色
QPalette::Text foreground和Base一起使用,通常与WindowText类似
QPalette::Button 按钮背景色
QPalette::ButtonText 按钮文本颜色
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

简易Demo:

#include "widget.h"
#include "ui_widget.h"
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->pushButton->setAutoFillBackground(true);//设置自动填充背景色,如果不需要填充背景色,此行代码可省略
QPalette palette = ui->pushButton->palette();//建立调色板对象
palette.setColor(QPalette::ButtonText, Qt::blue);//设置按钮字体颜色
palette.setColor(QPalette::Button, Qt::red); //设置按钮背景色,需要设置setAutoFillBackground(true)
ui->pushButton->setPalette(palette); //控件使用调色板
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

效果展示: 
使用QPalette之前: 

使用QPalette之后: 

https://blog.csdn.net/qq_40194498/article/details/79696236

QPalette实例教程(QWidget自带的颜色设置工具,对Window的各个部分都可设置颜色)的更多相关文章

  1. HTML5和CSS3实例教程 中文版 高清PDF扫描版

    HTML5和CSS3实例教程共分3部分,集中讨论了HTML5和CSS3规范及其技术的使用方法.首先是规范概述,介绍了新的结构化标签.表单域及其功能(包括自动聚焦功能和占位文本)和CSS3的新选择器.接 ...

  2. 运行caffe自带的mnist实例教程

    运行caffe自带的mnist实例教程 本文结合几篇博文总结下来的,附上其中一篇原博文链接以供参考:http://blog.sina.com.cn/s/blog_168effc7e0102xjr1.h ...

  3. Unity-2017.2官方实例教程Roll-a-ball(一)

    声明: 本文系转载,由于Unity版本不同,文中有一些小的改动,原文地址:http://www.jianshu.com/p/6e4b0435e30e Unity-2017.2官方实例教程Roll-a- ...

  4. 图解CSS3制作圆环形进度条的实例教程

    圆环形进度条制作的基本思想还是画出基本的弧线图形,然后CSS3中我们可以控制其旋转来串联基本图形,制造出部分消失的效果,下面就来带大家学习图解CSS3制作圆环形进度条的实例教程 首先,当有人说你能不能 ...

  5. Python导出Excel为Lua/Json/Xml实例教程(一):初识Python

    Python导出Excel为Lua/Json/Xml实例教程(一):初识Python 相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出 ...

  6. 值得 Web 开发人员学习的20个 jQuery 实例教程

    这篇文章挑选了20个优秀的 jQuery 实例教程,这些 jQuery 教程将帮助你把你的网站提升到一个更高的水平.其中,既有网站中常用功能的的解决方案,也有极具吸引力的亮点功能的实现方法,相信通过对 ...

  7. Web 开发中应用 HTML5 技术的10个实例教程

    HTML5 作为下一代网站开发技术,无论你是一个 Web 开发人员或者想探索新的平台的游戏开发者,都值得去研究.借助尖端功能,技术和 API,HTML5 允许你创建响应性.创新性.互动性以及令人惊叹的 ...

  8. 《HTML5与CSS3实例教程》

    <HTML5与CSS3实例教程> 基本信息 作者: (美)Brian P. Hogan 译者: 卢俊祥 丛书名: 图灵程序设计丛书 出版社:人民邮电出版社 ISBN:97871153634 ...

  9. Silverlight实例教程 – Datagrid,Dataform数据验证和ValidationSummary(转载)

    Silverlight 4 Validation验证实例系列 Silverlight实例教程 - Validation数据验证开篇 Silverlight实例教程 - Validation数据验证基础 ...

随机推荐

  1. maven仓库快速镜像

    国内连接maven官方的仓库更新依赖库,网速一般很慢,收集一些国内快速的maven仓库镜像以备用. ====================国内OSChina提供的镜像,非常不错=========== ...

  2. [D3JS] Add more map layer and color

    import React, {Component} from 'react'; import * as d3 from 'd3'; import 'd3-geo'; import * as topoj ...

  3. PHP版本 D-Link 动态域名客户端

    <?php /* * D-Link 动态域名客户端.主域名www.dlinkddns.com 和 www.dlinkddns.com.cn * 首先获取外网IP,若IP没有变化,则结束运行:否则 ...

  4. Android BuildConfig:Gradle自定义你的BuildConfig

    在很早之前我发布了这篇博客Android BuildConfig.DEBUG的妙用, 提到了Eclipse中通过BuildConfig.DEBUG字段用来调试Log非常好用,但是殊不知在Android ...

  5. 原生js大总结十一

    101.请简述prototype.__proto__ constructor三者的关系   1.prototype:     每一个函数都有一个prototype这个属性,而这个属性指向一个对象,这个 ...

  6. c++中的相对路径

           今天在vs2010里读取相对路径下的图片文件出了点问题.于是查了一下相对路径的编程知识,记录下来分享给大家:      问题描写叙述:path=".\\TrainData\\& ...

  7. swift Reflection(字典转模型)变量继承本类类名解决办法

    class IWStatus: Reflect { var source: NSString! var created_at: NSString! var idstr: NSString! var u ...

  8. RabbitMQ安全相关的网络资源介绍

    无法用guest远程訪问RabbitMQ的的解决方式 Can't access RabbitMQ web management interface after fresh install http:/ ...

  9. WIN32得到HWND

    HWND hwndFound //= FindWindow(_T("RC352_Win32"),NULL); = GetConsoleWindow();

  10. QMap 的增删改查

    map 是一种数据容器,它提供一种由key 到 value 的映射.map 的key 是唯一的, 也是有序的.map 通常由近似平衡的红黑树来实现.key 的有序性,使得插入,查找节点比较有效.map ...