PySide6.QtGui.QPalette¶
- class QPalette¶
-
概要¶
方法¶
def
__init__()def
accent()def
alternateBase()def
base()def
brightText()def
brush()def
button()def
buttonText()def
cacheKey()def
color()def
dark()def
highlight()def
isBrushSet()def
isCopyOf()def
isEqual()def
light()def
link()def
linkVisited()def
mid()def
midlight()def
__ne__()def
__eq__()def
resolve()def
resolveMask()def
setBrush()def
setColor()def
setColorGroup()def
setResolveMask()def
shadow()def
swap()def
text()def
toolTipBase()def
toolTipText()def
window()def
windowText()
注意
本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。
详细描述¶
调色板由三个颜色组组成:活动、禁用和非活动。Qt中的所有小部件都包含一个调色板,并使用它们的调色板来绘制自己。这使得用户界面易于配置,并且更容易保持一致。
如果您创建一个新的小部件,我们强烈建议您使用调色板中的颜色,而不是硬编码特定的颜色。
颜色组:
活动组用于具有键盘焦点的窗口。
非活动组用于其他窗口。
禁用组用于因某些原因被禁用的小部件(非窗口)。
活动和非活动窗口都可以包含禁用的小部件。(禁用的小部件通常被称为不可访问或灰显。)
在大多数样式中,激活和非激活看起来是一样的。
可以使用
setColor()和setBrush()为调色板中任何颜色组的特定角色设置颜色和画笔。颜色组包含一组小部件用于绘制自身的颜色。我们建议小部件使用调色板中的颜色组角色,如“前景”和“基础”,而不是字面颜色如“红色”或“青绿色”。颜色角色在ColorRole文档中进行了枚举和定义。我们强烈建议您使用当前样式的默认调色板(由QGuiApplication::palette()返回),并根据需要进行修改。Qt的小部件在绘制时会这样做。
要修改颜色组,您可以调用函数
setColor()和setBrush(),具体取决于您想要纯色还是位图图案。还有相应的
color()和brush()获取器,以及一个常用的便捷函数来获取当前ColorGroup的ColorRole:window()、windowText()、base()等。你可以使用复制构造函数复制一个调色板,并使用
isCopyOf()测试两个调色板是否相同。QPalette通过使用隐式共享进行了优化,因此将QPalette对象作为参数传递非常高效。- class ColorGroup¶
常量
描述
QPalette.Disabled
QPalette.Active
QPalette.Inactive
QPalette.Normal
Active的同义词
- class ColorRole¶
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
ColorRole 枚举定义了当前图形用户界面中使用的不同符号颜色角色。
核心角色包括:
常量
描述
QPalette.Window
一般背景颜色。
QPalette.WindowText
一般的前景颜色。
QPalette.Base
主要用于文本输入小部件的背景颜色,但也可以用于其他绘画 - 例如组合框下拉列表的背景和工具栏手柄。它通常是白色或其他浅色。
QPalette.AlternateBase
用作具有交替行颜色的视图中的交替背景颜色(参见 QAbstractItemView::setAlternatingRowColors())。
QPalette.ToolTipBase
用作QToolTip和QWhatsThis的背景颜色。工具提示使用
QPalette的非活动颜色组,因为工具提示不是活动窗口。QPalette.ToolTipText
用作QToolTip和QWhatsThis的前景色。工具提示使用
QPalette的非活动颜色组,因为工具提示不是活动窗口。QPalette.PlaceholderText
用作各种文本输入小部件的占位符颜色。此枚举值已在Qt 5.12中引入
QPalette.Text
与
Base一起使用的前景色。这通常与WindowText相同,在这种情况下,它必须与Window和Base提供良好的对比。QPalette.Button
一般按钮的背景颜色。这个背景可能与
Window不同,因为某些样式要求按钮有不同的背景颜色。QPalette.ButtonText
与
Button颜色一起使用的前景色。QPalette.BrightText
一种与
WindowText非常不同的文本颜色,并且与例如Dark形成良好对比。通常用于在Text或WindowText对比度较差的地方绘制文本,例如在按下的按钮上。请注意,文本颜色不仅用于文字;文本颜色通常用于文本,但使用文本颜色角色来绘制线条、图标等也很常见。有一些颜色角色主要用于3D斜角和阴影效果。所有这些通常都是从
Window派生的,并以依赖于该关系的方式使用。例如,按钮依赖于它以使斜角看起来吸引人,而Motif滚动条依赖于Mid以使其与Window略有不同。常量
描述
QPalette.Light
比
Button颜色更浅。QPalette.Midlight
介于
Button和Light之间。QPalette.Dark
比
Button更暗。QPalette.Mid
介于
Button和Dark之间。QPalette.Shadow
一种非常深的颜色。默认情况下,阴影颜色是Qt::black。
选中的(标记的)项目有两个角色:
常量
描述
QPalette.Highlight
用于指示选中项或当前项的颜色。默认情况下,高亮颜色为Qt::darkBlue。
QPalette.Accent
一种通常与基础色、窗口色和按钮色形成对比或互补的颜色。它通常代表用户选择的桌面个性化。交互组件的样式是一个典型的使用场景。除非明确设置,否则它默认为高亮色。
QPalette.HighlightedText
与
Highlight形成对比的文本颜色。默认情况下,高亮文本颜色为Qt::white。有两种与超链接相关的颜色角色:
常量
描述
QPalette.Link
用于未访问超链接的文本颜色。默认情况下,链接颜色为Qt::blue。
QPalette.LinkVisited
用于已访问超链接的文本颜色。默认情况下,已访问链接的颜色为Qt::magenta。
请注意,在Qt中渲染富文本时,我们不使用
Link和LinkVisited角色,并且我们建议您使用CSS和setDefaultStyleSheet()函数来更改链接的外观。例如:browser = QTextBrowser() linkColor = QColor(Qt.red) QString sheet = "a { text-decoration: underline; color: %1 }".arg(linkColor.name()) browser.document().setDefaultStyleSheet(sheet)
常量
描述
QPalette.NoRole
无角色;这个特殊角色通常用于表示尚未分配角色。
- __init__()¶
构造一个没有设置颜色角色的空调色板对象。
当用作QWidget的调色板时,颜色将按照QWidget::setPalette()的描述进行解析。
另请参阅
palette()- __init__(button)
- Parameters:
按钮 –
GlobalColor
从
button颜色构建一个调色板。其他颜色将基于此颜色自动计算。Window也将是按钮颜色。- __init__(button)
- Parameters:
按钮 –
QColor
从
button颜色构建一个调色板。其他颜色将基于此颜色自动计算。Window也将是按钮颜色。- __init__(palette)
- Parameters:
调色板 –
QPalette
构造
p的副本。由于隐式共享,这个构造函数非常快。
从
button颜色和window构建一个调色板。其他颜色将基于这些颜色自动计算。- __init__(windowText, window, light, dark, mid, text, base)
使用指定的
windowText、window、light、dark、mid、text和base颜色构建一个调色板。按钮颜色将设置为窗口颜色。- __init__(windowText, button, light, dark, mid, text, bright_text, base, window)
构建一个调色板。你可以为
windowText、button、light、dark、mid、text、bright_text、base和window传递画笔、位图或纯色。另请参阅
返回当前颜色组的强调笔刷。
返回当前颜色组的备用基础笔刷。
返回当前颜色组的基础画笔。
返回当前颜色组的亮色文本前景笔刷。
这是一个重载函数。
返回在当前
ColorGroup中为给定颜色role设置的画笔。另请参阅
- brush(cg, cr)
- Parameters:
cg –
ColorGroupcr –
ColorRole
- Return type:
返回指定颜色
group中的画笔,用于给定的颜色role。另请参阅
返回当前颜色组的按钮画笔。
返回当前颜色组的按钮文本前景笔刷。
- cacheKey()¶
- Return type:
整数
返回一个数字,用于标识此
QPalette对象的内容。如果不同的QPalette对象引用相同的内容,则它们可以具有相同的键。当调色板改变时,cacheKey() 将会发生变化。
这是一个重载函数。
返回在当前
ColorGroup中为给定颜色role设置的颜色。- color(cg, cr)
- Parameters:
cg –
ColorGroupcr –
ColorRole
- Return type:
返回指定颜色
group中的颜色,用于给定的颜色role。另请参阅
- currentColorGroup()¶
- Return type:
返回调色板的当前颜色组。
返回当前颜色组的深色画笔。
返回当前颜色组的高亮画笔。
返回当前颜色组的高亮文本画笔。
- isBrushSet(cg, cr)¶
- Parameters:
cg –
ColorGroupcr –
ColorRole
- Return type:
布尔
如果调色板上之前已经设置了
ColorGroupcg和ColorRolecr,则返回true;否则返回false。ColorGroupcg应该小于NColorGroups,但你可以使用Current。在这种情况下,将使用之前设置的当前颜色组。ColorRolecr应该小于NColorRoles。如果此调色板和
p是彼此的副本,即其中一个被创建为另一个的副本且之后未被修改,则返回true;否则返回false。这比相等性要严格得多。另请参阅
operator=()operator==()- isEqual(cr1, cr2)¶
- Parameters:
cr1 –
ColorGroupcr2 –
ColorGroup
- Return type:
布尔
如果颜色组
cg1等于cg2,则返回true(通常很快);否则返回false。返回当前颜色组的浅色画笔。
返回当前颜色组中未访问链接文本的画笔。
返回当前颜色组的已访问链接文本画笔。
返回当前颜色组的中间画笔。
返回当前颜色组的中间色调笔刷。
如果此调色板与
p不同,则返回true(较慢);否则返回false(通常较快)。如果此调色板等于
p,则返回true(通常很快);否则返回false(较慢)。返回当前颜色组的占位符文本画笔。
返回一个新的
QPalette,它是此实例和other的联合。在此实例中设置的颜色角色优先。未在此实例中设置的角色将从other中获取。另请参阅
- resolveMask()¶
- Return type:
整数
为调色板中的所有组设置给定颜色
role的画笔为指定的brush。另请参阅
- setBrush(cg, cr, brush)
- Parameters:
cg –
ColorGroupcr –
ColorRolebrush –
QBrush
这是一个重载函数。
将指定颜色
group中的画笔设置为brush,用于给定的颜色role。另请参阅
这是一个重载函数。
设置用于所有颜色组中给定颜色
role的颜色为指定的纯色color。另请参阅
- setColor(cg, cr, color)
- Parameters:
cg –
ColorGroupcr –
ColorRole颜色 –
QColor
设置指定颜色
组中的颜色,用于给定的颜色角色,设置为指定的纯色颜色。另请参阅
- setColorGroup(cr, windowText, button, light, dark, mid, text, bright_text, base, window)¶
设置
cg处的组。您可以为windowText、button、light、dark、mid、text、bright_text、base和window传递画笔、位图或纯色。另请参阅
- setCurrentColorGroup(cg)¶
- Parameters:
cg –
ColorGroup
将调色板的当前颜色组设置为
cg。另请参阅
- setResolveMask(mask)¶
- Parameters:
mask – 整数
返回当前颜色组的阴影笔刷。
将此调色板实例与
other交换。此函数非常快速且永远不会失败。返回当前颜色组的文本前景画笔。
返回当前颜色组的工具提示基础画笔。此画笔由QToolTip和QWhatsThis使用。
返回当前颜色组的工具提示文本画笔。此画笔由QToolTip和QWhatsThis使用。
返回当前颜色组的窗口(通用背景)画刷。
返回当前颜色组的窗口文本(一般前景)画刷。