Qt之控件颜色面板类QPalette(转自CSDN,xgbing)

QPalette类提供了绘制QWidget控件时使用的颜色。

控件的颜色状态分三种:

(1)Active,激活状态

(2)Disabled,禁用状态

(3)Inactive,未激活状态

控件在这三种不同的状态下具有不同的颜色值,QPalette类管理这三组颜色,它根据这三种状态分为三组颜色,每一组颜色都根据绘图角色的不同分类。系统在绘制控件时使用这些颜色,程序员可以改变这些设置。

设置的方法是先调用QWidget::palette()获取当前面板,修改它为自定义的值后再通过方法QWidget::setPalette设置为新修改的面板。代码如下所示:

[cpp] view plaincopy

  1. QPalette palette = widget->palette();
  2. palette.setColor(QPalette::Window, Qt::lightGray);  //改变控件背景色
  3. palette.setColor(QPalette::WindowText, Qt::blue);   //改变控件字体颜色
  4. ...
  5. widget->setPalette(palette);

通过这种方法,可以方便设置控件的背景色,字体颜色等。

常用的设置方法如下:

(1) void QPalette::setBrush ( ColorRole role, const QBrush & brush )

改变所有组下指定角色role的画刷颜色值。

(2) void QPalette::setBrush ( ColorGroup group, ColorRole role, const QBrush & brush )

改变指定组group下的指定角色role的画刷颜色值。

(3) void QPalette::setColor ( ColorRole role, const QColor & color )

改变所有组下指定角色role的颜色值。

(4) void QPalette::setColor ( ColorGroup group, ColorRole role, const QColor & color )

改变指定组group下指定角色role的颜色值。

后续详细:http://blog.csdn.net/xgbing/article/details/7784984

时间: 2024-11-29 05:11:56

Qt之控件颜色面板类QPalette(转自CSDN,xgbing)的相关文章

Qt基本控件及三大布局

Qt基本控件及三大布局 来源: http://blog.csdn.net/a2604539133/article/details/73920696 Qt基本模块 一.Qt的三大布局 QHBoxLayout: 水平显示布局,所有在其上面摆放的控件只能水平排列下去: QVBoxLayout:  垂直显示布局,所有在其上面摆放的控件只能垂直排列下去: QGridLayout  格子显示布局,可以按照表格的形式显示布局: 二.Qt的控件 label:标签,可以显示文本信息,只读: pushbutton

重新想象 Windows 8.1 Store Apps (77) - 控件增强: 文本类控件的增强, 部分控件增加了 Header 属性和 HeaderTemplate 属性, 部分控件增加了 PlaceholderText 属性

[源码下载] 重新想象 Windows 8.1 Store Apps (77) - 控件增强: 文本类控件的增强, 部分控件增加了 Header 属性和 HeaderTemplate 属性, 部分控件增加了 PlaceholderText 属性 作者:webabcd介绍重新想象 Windows 8.1 Store Apps 之控件增强 文本类控件的增强 为一些控件增加了 Header 属性和 HeaderTemplate 属性 为一些控件增加了 PlaceholderText 属性 示例1.演示

VC 对话框背景颜色、控件颜色(三种方法)

系统环境:Windows 7软件环境:Visual C++ 2008 SP1本次目的:为对话框设置背景颜色.控件颜色 既然MFC对话框不好开发,那么现在我们来开始美化我们的对话框.为对话框设置背景颜色.控件颜色等等. 对话框背景颜色: 网上流传有四种方法(可能还不止),在VC++2008SP1测试后,发现只有三种可以使用了,其中第一种被废弃了.以下是四种方法: 方法一 (失效):调用CWinApp类的成员函数SetDialogBkColor来实现.       其中函数的第一个参数指定了背景颜色

背水一战 Windows 10 (28) - 控件(文本类): TextBox, PasswordBox

原文:背水一战 Windows 10 (28) - 控件(文本类): TextBox, PasswordBox [源码下载] 作者:webabcd 介绍背水一战 Windows 10 之 控件(文本类) TextBox PasswordBox 示例1.TextBox 的示例 1Controls/TextControl/TextBoxDemo1.xaml <Page x:Class="Windows10.Controls.TextControl.TextBoxDemo1" xmln

背水一战 Windows 10 (27) - 控件(文本类): TextBlock

原文:背水一战 Windows 10 (27) - 控件(文本类): TextBlock [源码下载] 作者:webabcd 介绍背水一战 Windows 10 之 控件(文本类) TextBlock 示例1.TextBlock 的示例 1Controls/TextControl/TextBlockDemo1.xaml <Page x:Class="Windows10.Controls.TextControl.TextBlockDemo1" xmlns="http://

背水一战 Windows 10 (34) - 控件(进度类): RangeBase, Slider, ProgressBar, ProgressRing

原文:背水一战 Windows 10 (34) - 控件(进度类): RangeBase, Slider, ProgressBar, ProgressRing [源码下载] 作者:webabcd 介绍背水一战 Windows 10 之 控件(进度类) RangeBase Slider ProgressBar ProgressRing 示例1.RangeBase(基类) 的示例Controls/ProgressControl/RangeBaseDemo.xaml <Page x:Class="

背水一战 Windows 10 (38) - 控件(布局类): Panel, Canvas, RelativePanel, StackPanel, Grid

原文:背水一战 Windows 10 (38) - 控件(布局类): Panel, Canvas, RelativePanel, StackPanel, Grid [源码下载] 作者:webabcd 介绍背水一战 Windows 10 之 控件(布局类) Panel Canvas RelativePanel StackPanel Grid 示例1.Panel(基类) 的示例Controls/LayoutControl/PanelDemo.xaml <Page x:Class="Window

背水一战 Windows 10 (29) - 控件(文本类): RichTextBlock, RichTextBlockOverflow, RichEditBox

原文:背水一战 Windows 10 (29) - 控件(文本类): RichTextBlock, RichTextBlockOverflow, RichEditBox [源码下载] 作者:webabcd 介绍背水一战 Windows 10 之 控件(文本类) RichTextBlock RichTextBlockOverflow RichEditBox 示例1.RichTextBlock 的示例Controls/TextControl/RichTextBlockDemo.xaml <Page

背水一战 Windows 10 (60) - 控件(媒体类): Pointer 涂鸦板, InkCanvas 涂鸦板

[源码下载] 作者:webabcd 介绍背水一战 Windows 10 之 控件(媒体类) 通过处理 Pointer 相关事件实现一个简单的涂鸦板 InkCanvas 基础知识 示例1.演示如何通过 Pointer 相关事件的处理,来实现一个简单的涂鸦板Controls/MediaControl/InkSimple.xaml <Page x:Class="Windows10.Controls.MediaControl.InkSimple" xmlns="http://s