QPalette类包含了Qt窗口不见的颜色组(collor group);

1.Active组,该组的颜色用户当前活动的(active)窗口,即具有键盘或鼠标焦点的窗口;

2.Inactive组,该组用语其他的窗口;

3.Disabled组,该组用语窗台为不可用的(disabled)的子窗口部件(不包含窗口).

所有Qt窗口部件都拥有一个调色板并使用它绘制自己.通常,活动状态的窗口标题栏为蓝色的,而非活动(inactive)状态的窗口的标题栏显示为灰色的;活动状态的窗口和非活动状态的窗口都可以包含状态为不可用的窗口不见,一个不可用的窗口不见(包括该窗口不见包含的子窗口部件)显示为灰色的,用户是无法同它进行交互的.通过改变窗口不见的调色板的各个组中的颜色,能够改变窗口不见的显示颜色,比如改变背景色,文本颜色等.

可以通过QWidget::palette()获取一个窗口不见的调色板,然后通过QWidget::setPalette()函数为该窗口不见设置修改后的调色板.或通过QApplication::palette()函数获取应用程序的调色板,并通过QApplication::setPalette()为该应用程序设置修改后的调色板.修改一个窗口部件的调色板只会影响到改窗口部件以及资窗口不见(不包含子窗口);而改变一个应用程序的调色板将会影响到该应用程序的所有窗口部件.当对一个窗口不见的调色板已经作了修改后,再对其父窗口部件调色板的修改不会影响到该窗口部件的调色板;同样,对应用程序调色板的修改不会影响已经单独做了调色板修改的窗口部件.

调色板类QPallete提供了颜色角色(color roles)概念,是指当前GUI界面中颜色的职责,通过枚举变量QPalette::ColorRole来定义,比较常用的颜色角色有:

QPalete::Window,通常指窗口部件的背景色;

QPalette:WindowText,通常指窗口不见的前景色;

QPalette::Base,指文本输入窗口部件(比如QtextEdit,QLinedit等)的背景色.

QPalette::Text,与QPalette::Base一块使用,指文本输入窗口部件的前景色;

QPalette::Button,指按钮窗口部件的背景色;

QPalette::ButtonText,指按钮窗口部件的前景色

http://www.cnblogs.com/SkylineSoft/articles/2046330.html

调色板类QPalette——包含了Qt窗口不见的颜色组(collor group),和Windows右键属性外观非常类似的更多相关文章

  1. 自定义QT窗口部件外观之QStyle

    自定义QT窗口部件外观 重新定义Qt内置窗口部件的外观常用的方法有两种:一是通过子类化QStyle 类或者预定义的一个样式,例如QWindowStyle,来定制应用程序的观感:二是使用Qt样式表. Q ...

  2. 深度探索QT窗口系统(五篇)

    窗口作为界面编程中最重要的部分,没有窗口就没有界面,是窗口让我们摆脱了DOS时代,按钮是一个窗口,文本框是一个窗口,标签页是一个窗口,...一个窗口可以由多个窗口组成,每天我们都在与窗口打交道,当你打 ...

  3. Qt窗口定制

    qt中的QWidget窗口支持窗体绘制,但是不支持窗口标题栏绘制,想要美观的界面,还需要自己去定制,下面我就介绍一种定制窗体的方法 一个窗口无非就3部分,标题栏.窗体和状态栏,接下来我定制的窗口没有状 ...

  4. 界面编程之QT窗口系统20180726

    /*******************************************************************************************/ 一.坐标系统 ...

  5. Qt窗口部件及子部件

    QWidget类是所有用户界面对象的基类,被称为基础窗口部件. #include <QApplication> #include<QLabel> #include<QWi ...

  6. CentOS下Qt窗口透明效果失效,成黑色背景的问题

    一.问题 Linux系统下Qt窗口的透明效果成了黑色,但同样的代码在windows机子上有透明效果,主要是修改系统的配置,仅在centos6.3及其以上版本实验过.其他系统可以相应配置. 二.问题运行 ...

  7. (二)Qt窗口应用程序Widget

    QMainWindow,QWidget,QDialog,这三基类都可以作为顶层窗口 QWidget:是所有窗口类的父类,功能最简单 QMainWindow:如果窗口需要菜单栏,工具栏,状态栏,就需要Q ...

  8. 初识Qt窗口界面

    1.新建一个新的Qt Gui应用,项目名称随意,例如MyMainWindow,基类选择QMainWindow,类名为MainWindow. 2.项目建立后,双击mainwindow.ui文件,在界面的 ...

  9. 06--谈谈:C++类的“包含”机制

    谈谈:C++类的“包含”机制   本人在学习Qt的时候发现了一个非常有趣的现象.有很多函数的调用方法都写成了如下的形式: object.func().func2(); 这令小弟着实不懂.在上面这段代码 ...

随机推荐

  1. spring学习参考资料

    http://www.cnblogs.com/ooooevan/p/5795456.html http://blog.csdn.net/hongjun1847/article/details/2053 ...

  2. ScrollView属性fillViewport解决android布局不能撑满全屏的问题

    转:http://blog.sina.com.cn/s/blog_6cf2ea6a0102v61f.html 开发项目中遇到一个问题,布局高度在某些国产酷派小屏幕手机上高度不够全部显示,于是使用了Sc ...

  3. SilverlightLoader使用托管代码创建自定义载入界面及动态加载XAP

    Silverlight实现动态加载xap和Splash Screen.收藏! 内容来自 http://silverlightchina.net/html/tips/2010/0115/588.html

  4. fcntl记录锁

    #include<fcntl.h> int fcntl(fd,F_GETLK/F_SETLK/F_SETLKW,struct flock *flockptr); F_GETLK:测试flo ...

  5. Oracle EBS-SQL (SYS-23):用户权限查询.sql

    select b.user_name, b.description, b.creation_date, d.responsibility_name   from fnd_user b, fnd_use ...

  6. VC使用双缓冲避免绘图闪烁的正确使用方法【转】

    使用内存DC绘图,然后实现双缓冲,避免绘图闪烁,这个小技术简单但很有效.但是仍然有很多人说使用了双缓冲,图片却仍然有闪烁,分析了几个这样的例子,发现 其实不是双缓冲的技术问题,而是使用者没有正确理解和 ...

  7. ebs清除并法管理器所清除的表

    In this Document   Goal   Solution   References Applies to: Oracle Concurrent Processing - Version 1 ...

  8. NYOJ-252 01串

    01串 时间限制:1000 ms  |  内存限制:65535 KB 难度:2 描写叙述 ACM的zyc在研究01串,他知道某一01串的长度,但他想知道不含有"11"子串的这样的长 ...

  9. 转载:做Java开发这一年 (火龙果软件)

    转载:http://www.uml.org.cn/success/201410205.asp 从去年到现在,从.NET转向Java开发(只是因为项目原因,绝对与平台好坏没有关系)差不多有一年的时间了. ...

  10. asp.net DropDownList的AppendDataBoundItems属性

    个人笔记 当设置DropDownList的AppendDataBoundItems属性为true,是将数据绑定项追加到静态声明的列表上,即在绑定之前可加入静态列表项. 例如: 前台这么写: <a ...