Qt样式表参考
Qt样式表支持各种属性、伪状态和子控件,这使得可以自定义小部件的外观。
可定制的控件列表
以下表格列出了可使用样式表自定义的Qt小部件
控件 | 如何定制 |
---|---|
QAbstractScrollArea | 支持盒模型。 包括QAbstractScrollArea的所有派生类,包括QTextEdit和QAbstractItemView(所有视图类),都支持使用background-attachment实现可滚动的背景。将background-attachment设置为 fixed 将提供一个不会随视图滚动的背景图像。将background-attachment设置为scroll 时,当滚动条移动时,背景图像会滚动。请参阅定制QAbstractScrollArea示例。 |
QCheckBox | 支持盒模型。复选标记可以使用::indicator子控件进行定制。默认情况下,复选标记放置在控件内容的左上角。 spacing属性指定了复选标记和文本之间的间距。 请参阅定制QCheckBox示例。 |
QColumnView | 可以使用image属性来定制把手。 可以通过::left-arrow子控件和::right-arrow子控件来定制箭头指示器。 |
QComboBox | 可以使用盒模型来定制ComboBox周围的框架。 可以使用::drop-down子控件来定制下拉按钮。默认情况下,下拉按钮放置在控件的填充矩形的右上角。 可以使用::down-arrow子控件来定制下拉按钮内的箭头标记。默认情况下,箭头放置在下拉子控件的内容矩形的中心。 可以使用placeholder-text-color属性来设置占位符文本的颜色。 请参阅定制QComboBox示例。 |
QDateEdit | 请参阅QSpinBox。 |
QDateTimeEdit | 请参阅QSpinBox。 |
QDialog | 仅支持背景、背景裁剪和背景基点属性。 警告:请确保为您的自定义小部件定义了Q_OBJECT宏。 |
QDialogButtonBox | 可以使用按钮布局属性修改按钮布局。 |
QDockWidget | 支持停靠时修改标题栏和标题栏按钮的样式。 可以使用边框属性为停靠小部件设置样式。可以使用::title子控件来自定义标题栏。使用::close-button和::float-button分别来定位关闭和浮动按钮。 当标题栏垂直时,会设置:vertical伪类。同时,根据QDockWidget::DockWidgetFeature,还会设置:closable、:floatable和:movable伪状态。 注意:使用QMainWindow::separator来设置调整大小的手柄样式。 警告:当QDockWidget未停靠时,样式表不起作用,因为Qt在未停靠时使用原生顶级窗口。 请参阅自定义QDockWidget以获取示例。 |
QDoubleSpinBox | 请参阅QSpinBox。 |
QFrame | 支持盒模型。 从4.3版本开始,在QLabel上设置样式表会自动设置QFrame::frameStyle属性为QFrame::StyledPanel。 请参阅自定义QFrame以获取示例。 |
QGroupBox | 支持盒模型。 可以使用::title子控件来设置标题样式。默认情况下,标题的位置取决于QGroupBox::textAlignment。 在可复选的QGroupBox的情况下,标题包括复选指示器。可以使用::indicator子控件来设置指示器的样式。可以使用间距属性来控制文本和指示器之间的间距。 请参阅自定义QGroupBox以获取示例。 |
QHeaderView | 支持盒模型。 页眉视图的各个部分使用 ::section 子控件进行样式设计。该 section 子控件支持 :middle、:first、:last、:only-one、:next-selected、:previous-selected、:selected 和 :checked 伪状态。排序指示符可以使用 ::up-arrow 和 ::down-arrow 子控件进行样式设计。 请参阅 自定义 QHeaderView 以获取示例。 |
QLabel | 支持 盒模型。不支持 :hover 伪状态。 从4.3版本开始,在QLabel上设置样式表会自动设置QFrame::frameStyle属性为QFrame::StyledPanel。 请参阅 自定义 QFrame 以获取示例(QLabel 是从 QFrame 继承而来的)。 |
QLineEdit | 支持盒模型。 使用 selection-color 和 selection-background-color 分别对选定条目的颜色和背景进行样式设计。 可以使用placeholder-text-color属性来设置占位符文本的颜色。 使用 lineedit-password-character 属性对密码字符进行样式设计。 使用 lineedit-password-mask-delay 改变密码掩码延迟。 请参阅 自定义 QLineEdit 以获取示例。 |
QListView | 支持盒模型。 当启用 交替行颜色 时,可以使用 alternate-background-color 属性样式设计交替颜色。 使用 selection-color 和 selection-background-color 分别对选定条目的颜色和背景进行样式设计。 选择行为由 show-decoration-selected 属性控制。 使用 ::item 子控件对 QListView 中的条目进行更精细的控制。 请参阅 QAbstractScrollArea 以样式设计可滚动的背景。 请参阅 自定义 QListView 以获取示例。 |
QListWidget | 请参阅 QListView。 |
QMainWindow | 支持分隔符的样式设计。 当使用 QDockWidget 时,QMainWindow 中的分隔符使用 ::separator 子控件进行样式设计。 请参阅 自定义 QMainWindow 以获取示例。 |
QMenu | 支持盒模型。 单独的项目使用 ::item 子控件进行样式设计。除了通常支持的伪状态外, item 子控件还支持 :selected、:default、:exclusive 和 non-exclusive 伪状态。可检查菜单项的指示符使用 ::indicator 子控件进行样式设计。 分隔符使用 ::separator 子控件进行样式设计。 对于具有子菜单的项目,箭头标记使用 right-arrow 和 left-arrow 进行样式设计。 滚动条使用 ::scroller 进行样式设计。 使用 ::tearoff 对撕纸样式进行定义。 参见 自定义 QMenu 以获取示例。 |
QMenuBar | 支持盒模型。 spacing 属性指定菜单项之间的间距。各个项目通过 ::item 子控件进行样式定义。 警告: 在 Qt/Mac 上运行时,菜单栏通常嵌入到全局菜单栏中。在这种情况下,样式表将没有效果。 参见 自定义 QMenuBar 以获取示例。 |
QMessageBox | 可以使用 messagebox-text-interaction-flags 属性来改变与消息框中文本交互的方式。 |
QProgressBar | 支持盒模型。 可以使用 ::chunk 子控件来对进度条的块进行样式定义。块在控件的内容矩形中显示。 如果进度条显示文本,请使用 text-align 属性来定位文本。 不确定的进度条具有设置了 :indeterminate 伪状态的。 参见 自定义 QProgressBar 以获取示例。 |
QPushButton | 支持盒模型。 支持 :default、:flat、:checked 伪状态。 从 5.15 版本开始,可以将 icon 属性设置为覆盖按钮图标。 对于具有菜单的 QPushButton,菜单指示器通过 ::menu-indicator 子控件进行样式定义。可检查按钮的外观可以通过 :open 和 :closed 伪状态进行自定义。 警告: 如果您只在 QPushButton 上设置了背景色,除非您设置边框属性为某个值,否则背景可能不会显示。这是因为在默认情况下,QPushButton 绘制了原生的边框,该边框完全覆盖了背景色。例如, QPushButton { background-color: red; border: none; } 参见 自定义 QPushButton 以获取示例。 |
QRadioButton | 支持盒模型。 可以使用 ::indicator 子控件来对勾选指示器进行样式定义。默认情况下,指示器放置在控件内容矩形的左上角。 spacing属性指定了复选标记和文本之间的间距。 参见 自定义 QRadioButton 以获取示例。 |
QScrollBar | 支持盒模型。 控件的内容矩形被认为是滑动条移动的槽。使用 width 或 height 属性分别设置 QScrollBar 的尺寸(即宽度或高度,取决于方向)。要确定方向,请使用 :horizontal 和 :vertical 伪状态。 可以使用 ::handle 子控件来对滑动条进行样式定义。设置 min-width 或 min-height 为滑动条提供尺寸约束,具体取决于方向。 可以通过使用 ::add-line 子控件来为添加行的按钮添加样式。默认情况下,添加行的子控件放置在小部件边框矩形的右上角。根据方向,将放置 ::right-arrow 或 ::down-arrow。默认情况下,箭头放置在添加行子控件的内容矩形中心。 可以通过使用 ::sub-line 子控件来为减去行的按钮添加样式。默认情况下,减去行的子控件放置在小部件边框矩形的右下角。根据方向,将放置 ::left-arrow 或 ::up-arrow。默认情况下,箭头放置在减去行子控件的内容矩形中心。 可以使用 ::sub-page 子控件来为滑块中减去页面的区域添加样式。《a href="stylesheet-reference.html#add-page-sub" translate="no">::add-page 子控件可以用于为添加页面的滑块区域添加样式。 请参阅"自定义 QScrollBar" 的例子。 |
QSizeGrip | 支持 width、height 和 image 属性。 请参阅"自定义 QSizeGrip" 的例子。 |
QSlider | 支持盒模型。 对于水平滑动条,必须提供 min-width 和 height 属性。对于垂直滑动条,必须提供 min-height 和 width 属性。 使用 ::groove 子控件来为滑动条的凹槽添加样式。凹槽默认定位在小部件的内容矩形内。使用 ::handle 子控件为滑动条的滑块添加样式。子控件在凹槽子控件的内容矩形内移动。 请参阅"自定义 QSlider" 的例子。 |
QSpinBox | 可以使用 box model 为旋转框的框架添加样式。 可以使用 ::up-button 和 ::up-arrow 子控件为向上按钮和箭头添加样式。默认情况下,向上按钮放置在小部件填充矩形的右上角。如果没有明确指定大小,它将占据其引用矩形高度的一半。向上箭头放置在向上按钮的内容矩形中心。 可以使用 ::down-button 和 ::down-arrow 子控件为向下按钮和箭头添加样式。默认情况下,向下按钮放置在小部件填充矩形的右下角。如果没有明确指定大小,它将占据其引用矩形高度的一半。向下箭头放置在向下按钮的内容矩形中心。 请参阅"自定义 QSpinBox" 的例子。 |
QSplitter | 支持 box model。使用 ::handle 子控件为拆分器的手柄添加样式。 请参阅"自定义 QSplitter" 的例子。 |
QStatusBar | 仅支持 背景 属性。可以使用 ::item 子控件来设置单个项目的框架样式。 请参阅 自定义 QStatusBar 的示例。 |
QTabBar | 可以使用 ::tab 子控件来设置单个标签的样式。关闭按钮使用 ::close-button。标签支持 :only-one、:first、:last、:middle、:previous–selected、:next-selected、:selected 伪状态。 根据标签的方向,支持 :top、:left、:right、:bottom 伪状态。 通过使用负边距或使用 absolute 定位方案来创建选定状态的叠加标签。使用 ::tear 子控件来设置 QTabBar 的撕裂指示器样式。 QTabBar 使用两个 QToolButton 作为其滚动按钮,可以通过 QTabBar QToolButton 选择器来设置样式。要指定滚动按钮的宽度,请使用 ::scroller 子控件。使用 alignment 属性来设置 QTabBar 内标签的对齐方式。 警告:要改变 QTabBar 在 QTabWidget 中的位置,请使用 tab-bar 子控件(并设置子控件位置)。 请参阅 自定义 QTabBar 的示例。 |
QTabWidget | 使用 ::pane 子控件设置标签小部件的框架样式。使用 ::left-corner 和 ::right-corner 分别设置左右角落样式。通过 ::tab-bar 子控件控制标签栏的位置。 默认情况下,子控件的位置为 QWindowsStyle 中的 QTabWidget。要将 QTabBar 放在中间,请设置标签栏子控件的子控件位置。 根据标签的方向,支持 :top、:left、:right、:bottom 伪状态。 请参阅 自定义 QTabWidget 的示例。 |
QTableView | 支持 盒模型。当启用 交替行颜色 时,可以使用 alternate-background-color 属性来设置交替颜色。 使用 selection-color 和 selection-background-color 分别对选定条目的颜色和背景进行样式设计。 在 QTableView 中的角落小部件实现为 QAbstractButton,可以使用 "QTableView QTableCornerButton::section" 选择器来设置样式。 警告:如果你只为 QTableCornerButton 设置背景颜色,除非你设置边框属性为某个值,否则背景可能不显示。这是因为默认情况下,QTableCornerButton 绘制了原生边框,它完全覆盖了背景颜色。
|
QTableWidget | 见QTableView。 |
QTextEdit | 支持盒模型。 选中文本的颜色和背景通过使用selection-color和selection-background-color分别进行样式设置。 可以使用placeholder-text-color属性来设置占位符文本的颜色。 请参阅 QAbstractScrollArea 以样式设计可滚动的背景。 |
QTimeEdit | 请参阅QSpinBox。 |
QToolBar | 支持盒模型。 :top、:left、:right、:bottom伪状态取决于工具栏分组所在的区域。 :first、:last、:middle、:only-one伪状态指示工具栏在行组内的位置(见QStyleOptionToolBar::positionWithinLine)。 使用::separator子控件对手柄QToolBar的间隔进行样式设置。 使用::handle子控件对手柄(用于移动工具栏)进行样式设置。 参见定制QToolBar的例子。 |
QToolButton | 支持盒模型。 如果QToolButton有菜单,可以使用::menu-indicator子控件来设置指示器的样式。默认情况下,菜单指示器位于小部件填充矩形的右下角。 如果QToolButton处于QToolButton::MenuButtonPopup模式,则使用::menu-button子控件来实现绘制菜单按钮。::menu-arrow子控件用于绘制菜单按钮内部的箭头。默认情况下,它位于菜单按钮子控件内容矩形的中部。 当QToolButton显示箭头时,使用::up-arrow、::down-arrow、::left-arrow和::right-arrow子控件。 注意:如果只为QToolButton设置背景颜色,则背景不会出现,除非将边框属性设置为一个值。这是因为,默认情况下,QToolButton绘制一个原生边框,该边框完全覆盖了背景色。例如: QToolButton { background-color: red; border: none; } 参见定制QToolButton的例子。 |
QToolBox | 支持盒模型。 可以使用::tab子控件对单独的标签进行样式设置。标签支持:only-one、:first、:last、:middle、:previous-selected、:next-selected、:selected伪状态。 |
QToolTip | 支持盒模型。属性opacity控制工具提示的透明度。 参见定制QFrame的例子(QToolTip是QFrame)。 |
QTreeView | 支持 盒模型。当启用 交替行颜色 时,可以使用 alternate-background-color 属性来设置交替颜色。 使用 selection-color 和 selection-background-color 分别对选定条目的颜色和背景进行样式设计。 选择行为由 show-decoration-selected 属性控制。 可以使用::branch子控件来设置树视图的分支样式。::branch子控件支持:open、:closed、:has-sibling和:has-children伪状态。 使用::item子控件来对QTreeView中的项进行更细粒度的控制。 请参阅 QAbstractScrollArea 以样式设计可滚动的背景。 有关如何风格化分支的示例,请参阅自定义QTreeView。 |
QTreeWidget | 请参阅QTreeView。 |
QWidget | 仅支持背景、背景裁剪和背景基点属性。 如果从QWidget派生类,您需要为自定义QWidget提供如下paintEvent: void CustomWidget::paintEvent(QPaintEvent *) { QStyleOption opt; opt.initFrom(this); QPainter p(this); style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); } 如果没有设置样式表,上述代码为空操作。 警告:请确保为您的自定义小部件定义了Q_OBJECT宏。 |
属性列表
本节列出Qt样式表支持的所有属性。属性的值取决于属性类型。除非另有说明,以下属性适用于所有小部件。标记有星号*的属性是Qt特有的,在CSS2或CSS3中没有等效属性。Qt特有的属性如下
- gridline-color*
- image*
- lineedit-password-character*
- lineedit-password-mask-delay*
- messagebox-text-interaction-flags*
- opacity*
- placeholder-text-color*
- selection-background-color*
- selection-color*
- show-decoration-selected*
- spacing*
- subcontrol-origin*
- subcontrol-position*
- widget-animation-duration*
accent-color
类型 | 画刷 |
该属性设置Accent
,用于强调交互式UI元素。如果没有设置此属性,则默认为highlight
颜色。
alternate-background-color
类型 | 画刷 |
用于QAbstractItemView子类的替代背景颜色。
如果没有设置此属性,默认值是设置的颜色表的AlternateBase角色的颜色。
示例
QTreeView { alternate-background-color: blue; background: yellow; }
background
类型 | 背景 |
用于设置背景的简写表示法。等同于指定background-color
、background-image
、background-repeat
和/或background-position
。
此属性由QAbstractItemView子类、QAbstractSpinBox子类、QCheckBox、QComboBox、QDialog、QFrame、QGroupBox、QLabel、QLineEdit、QMenu、QMenuBar、QPushButton、QRadioButton、QSplitter、QTextEdit、QToolTip和平面QWidget支持。
示例
QTextEdit { background: yellow }
通常,需要设置类似于Qt::BrushStyle风格模式的填充图案。您可以使用background-color属性为Qt::SolidPattern、Qt::RadialGradientPattern、Qt::LinearGradientPattern以及Qt::ConicalGradientPattern设置填充图案。通过创建包含该图案的背景图像,可以轻松实现其他图案。
示例
QLabel { background-image: url(dense6pattern.png); background-repeat: repeat-xy; }
另请参阅background-origin、selection-background-color、background-clip、background-attachment以及alternate-background-color。
background-color
类型 | 画刷 |
小部件使用的背景颜色。
示例
background-image
类型 | Url |
为小部件使用的背景图像。图像的不透明部分允许background-color显示。
示例
QFrame { background-image: url(:/images/hydro.png) }
background-repeat
类型 | 重复 |
背景图像是否以及如何重复以填充background-origin矩形。
如果未指定此属性,则背景图像在两个方向上重复(repeat)。
示例
QFrame { background: white url(:/images/ring.png); background-repeat: repeat-y; background-position: left; }
background-position
类型 | 对齐 |
背景图像在background-origin矩形内的对齐方式。
如果未指定此属性,则默认对齐为top left。
示例
QFrame { background: url(:/images/footer.png); background-position: bottom left; }
background-attachment
类型 | 附加 |
确定在QAbstractScrollArea中的背景图像是滚动还是相对于视图窗口固定。默认情况下,背景图像与视图窗口一起滚动。
示例
QTextEdit { background-image: url("leaves.png"); background-attachment: fixed; }
另请参阅background
background-clip
类型 | 起点 |
绘制background的控件矩形。
该属性指定了对background-color和background-image进行裁剪的矩形。
此属性由QAbstractItemView子类、QAbstractSpinBox子类、QCheckBox、QComboBox、QDialog、QFrame、QGroupBox、QLabel、QPushButton、QRadioButton、QSplitter、QTextEdit、QToolTip以及plain QWidget支持。
如果未指定此属性,则默认为border。
示例
QFrame { background-image: url(:/images/header.png); background-position: top left; background-origin: content; background-clip: padding; }
另请参阅background、background-origin和The Box Model。
background-origin
类型 | 起点 |
控件背景矩形,用于与background-position和background-image结合使用。
此属性由QAbstractItemView子类、QAbstractSpinBox子类、QCheckBox、QComboBox、QDialog、QFrame、QGroupBox、QLabel、QPushButton、QRadioButton、QSplitter、QTextEdit、QToolTip以及plain QWidget支持。
如果未指定此属性,则默认为padding。
示例
QFrame { background-image: url(:/images/header.png); background-position: top left; background-origin: content; }
另请参阅background和The Box Model。
border
类型 | 边框 |
设置控件边框的简写符号。等同于指定border-color、border-style和/或border-width。
此属性由QAbstractItemView派生类、QAbstractSpinBox派生类、QCheckBox、QComboBox、QFrame、QGroupBox、QLabel、QLineEdit、QMenu、QMenuBar、QPushButton、QRadioButton、QSplitter、QTextEdit、QToolTip和纯QWidget支持。
示例
QLineEdit { border: 1px solid white }
border-top
类型 | 边框 |
设置控件顶部边框的缩写形式。相当于指定border-top-color
、border-top-style
和/或border-top-width
。
border-right
类型 | 边框 |
设置控件右侧边框的缩写形式。相当于指定border-right-color
、border-right-style
和/或border-right-width
。
border-bottom
类型 | 边框 |
设置控件底部边框的缩写形式。相当于指定border-bottom-color
、border-bottom-style
和/或border-bottom-width
。
border-left
类型 | 边框 |
设置控件左侧边框的缩写形式。相当于指定border-left-color
、border-left-style
和/或border-left-width
。
border-color
类型 | 框颜色 |
所有边框边缘的颜色。相当于指定border-top-color
、border-right-color
、border-bottom-color
和border-left-color
。
此属性由QAbstractItemView派生类、QAbstractSpinBox派生类、QCheckBox、QComboBox、QFrame、QGroupBox、QLabel、QLineEdit、QMenu、QMenuBar、QPushButton、QRadioButton、QSplitter、QTextEdit、QToolTip和纯QWidget支持。
如果未指定此属性,则默认为color(即控件的文字颜色)。
示例
QLineEdit { border-width: 1px; border-style: solid; border-color: white; }
另请参阅border-style、border-width、border-image和盒模型。
border-top-color
类型 | 画刷 |
边框顶部边缘的颜色。
border-right-color
类型 | 画刷 |
边框右侧边缘的颜色。
border-bottom-color
类型 | 画刷 |
边框底部边缘的颜色。
border-left-color
类型 | 画刷 |
边框左侧边缘的颜色。
border-image
类型 | 边框图像 |
用于填充边框的图像。图像被切割成九部分,并在必要时进行拉伸。有关详细信息,请参阅边框图像。
此属性由QAbstractItemView派生类、QAbstractSpinBox派生类、QCheckBox、QComboBox、QFrame、QGroupBox、QLabel、QLineEdit、QMenu、QMenuBar、QPushButton、QRadioButton、QSplitter、QTextEdit和QToolTip支持。
参阅border-color、border-style、border-width以及盒模型。
border-radius
类型 | 半径 |
边框角落的半径。相当于指定border-top-left-radius
、border-top-right-radius
、border-bottom-right-radius
和border-bottom-left-radius
。
border-radius裁剪元素的区域。
此属性由以下子类支持:QAbstractItemView、QAbstractSpinBox、QCheckBox、QComboBox、QFrame、QGroupBox、QLabel、QLineEdit、QMenu、QMenuBar、QPushButton、QRadioButton、QSplitter、QTextEdit和QToolTip。
如果未指定此属性,则默认值为0。
示例
QLineEdit { border-width: 1px; border-style: solid; border-radius: 4px; }
参阅border-width和盒模型。
border-top-left-radius
类型 | 半径 |
边框左上角的半径。
border-top-right-radius
类型 | 半径 |
边框右上角的半径。
border-bottom-right-radius
类型 | 半径 |
边框右下角的半径。设置此属性为正值将会呈现圆角。
border-bottom-left-radius
类型 | 半径 |
边框左下角的半径。设置此属性为正值将会呈现圆角。
border-style
类型 | 边框样式 |
所有边框的样式。
此属性由以下子类支持:QAbstractItemView、QAbstractSpinBox、QCheckBox、QComboBox、QFrame、QGroupBox、QLabel、QLineEdit、QMenu、QMenuBar、QPushButton、QRadioButton、QSplitter、QTextEdit和QToolTip。
如果未指定此属性,则默认为none
。
示例
QLineEdit { border-width: 1px; border-style: solid; border-color: blue; }
参阅border-color、border-style、border-image和盒模型。
border-top-style
类型 | 边框样式} |
边框上边的样式。
border-right-style
类型 | 边框样式 |
边框右边框的样式。
border-bottom-style
类型 | 边框样式 |
边框底边的样式。
border-left-style
类型 | 边框样式 |
边框左边的样式。
border-width
类型 | 盒模型长度 |
边框的宽度。相当于设置border-top-width
、border-right-width
、border-bottom-width
和border-left-width
。
此属性由以下子类支持:QAbstractItemView、QAbstractSpinBox、QCheckBox、QComboBox、QFrame、QGroupBox、QLabel、QLineEdit、QMenu、QMenuBar、QPushButton、QRadioButton、QSplitter、QTextEdit和QToolTip。
示例
QLineEdit { border-width: 2px; border-style: solid; border-color: darkblue; }
参阅border-color、border-radius、border-style、border-image和盒模型。
border-top-width
类型 | 长度 |
边框上边的宽度。
border-right-width
类型 | 长度 |
边框右边距的宽度。
border-bottom-width
类型 | 长度 |
边框下边距的宽度。
border-left-width
类型 | 长度 |
边框左边距的宽度。
bottom
类型 | 长度 |
如果 position 是 relative
(默认值), 将子控件移动一定偏移量向上;指定 bottom: y
等同于指定 top: -y
。
如果 position 是 absolute
, bottom
属性指定子控件的底部边缘相对于父控件的底部边缘位置(另见 subcontrol-origin)。
示例
QSpinBox::down-button { bottom: 2px }
button-layout
类型 | Number |
QDialogButtonBox 或 QMessageBox 中按钮的布局。可能的值有 0 (WinLayout)、1 (MacLayout)、2 (KdeLayout)、3 (GnomeLayout)和 5 (AndroidLayout)。
如果没有指定此属性,则默认为当前风格为 SH_DialogButtonLayout 风格提示指定的值。
示例
* { button-layout: 2 }
color
类型 | 画刷 |
用于渲染文本的颜色。
此属性由尊重 QWidget::palette 的所有小部件支持。
如果没有设置此属性,则默认值为小部件调色板为 QWidget::foregroundRole 设置的值(通常是黑色)。
示例
QPushButton { color: red }
另见 background 和 selection-color。
dialogbuttonbox-buttons-have-icons
类型 | Boolean |
QDialogButtonBox 中的按钮是否显示图标
如果此属性设置为 1,则 QDialogButtonBox 中的按钮显示图标;如果设置为 0,则不显示图标。
有关如何设置图标的信息,请参阅 图标列表 部分。
QDialogButtonBox { dialogbuttonbox-buttons-have-icons: 1; }
注意:定义此属性的样式必须在创建 QDialogButtonBox 之前应用;这意味着您必须将样式应用于父小部件或应用于应用程序本身。
font
类型 | Font |
设置文本字体的简写表示。相当于指定 font-family
、font-size
、font-style
和/或 font-weight
。
此属性由尊重 QWidget::font 的所有小部件支持。
如果没有设置此属性,则默认为 QWidget::font。
示例
QCheckBox { font: bold italic large "Times New Roman" }
font-family
类型 | String |
字体族。
示例
QCheckBox { font-family: "New Century Schoolbook" }
font-size
字体大小。在本版 Qt 中,仅支持 pt 和 px 度量。
示例
QTextEdit { font-size: 12px }
font-style
字体样式。
示例
QTextEdit { font-style: italic }
font-weight
字体重量。
gridline-color*
类型 | 颜色 |
QTableView中的网格线颜色。
如果未指定此属性,则默认为当前样式指定的SH_Table_GridLineColor样式提示的值。
示例
* { gridline-color: gray }
height
类型 | 长度 |
子控件的宽度(或在某些情况下,小部件)。
如果未指定此属性,则默认为依赖于子控件/小部件和当前样式的值。
警告:除非另有说明,否则在设置小部件时此属性没有任何效果。如果您想设置固定高度的小部件,请将min-height和max-height设置为相同值。
示例
QSpinBox::down-button { height: 10px }
另请参阅宽度。
icon
类型 | Url+ |
用于具有图标的控件中的图标。
目前唯一支持此属性的小部件是QPushButton。
注意:为按钮分配图标(使用QAbstractButton API)是应用程序的职责,而不是样式的职责。因此,除非您的样式表针对特定应用程序,否则请谨慎设置。
自5.15版起提供。
icon-size
类型 | 长度 |
控件中图标的宽度和高度。
可以使用此属性设置以下小部件的图标尺寸。
image*
类型 | Url+ |
绘制在子控件内容矩形内的图像。
图像属性接受Url列表或svg
。绘制的实际图像将使用与QIcon相同的算法确定(即图像永远不会放大,但在必要时将其缩小。如果指定svg
,则图像将调整到内容矩形的尺寸。
在子控件上设置图像属性会隐式设置子控件的宽度和高度(除非SVG中的图像)。
在Qt 4.3及更高版本中,可以使用image-position指定图像在矩形中的对齐方式。
此属性仅适用于子控件——我们不支持其他元素。
警告:渲染SVG图像需要QIcon SVG插件。
示例
// implicitly sets the size of down-button to the // size of spindown.png QSpinBox::down-button { image: url(:/images/spindown.png) }
image-position
类型 | 对齐方式 |
在Qt 4.3及更高版本中,可以使用相对或绝对位置指定图像对齐位置。
left
类型 | 长度 |
如果position设置为relative
(默认值),则将子控件沿右侧移动一定的偏移量。
如果position设置为absolute
,则左属性指定子控件左边缘相对于父控件左边缘的位置(另请参阅subcontrol-origin)。
如果未指定此属性,则默认为0
。
示例
QSpinBox::down-button { left: 2px }
lineedit-password-character*
类型 | Number |
将QLineEdit的密码字符表示为一个Unicode编号。
如果未指定此属性,则默认为当前样式为SH_LineEdit_PasswordCharacter样式提示指定的值。
示例
* { lineedit-password-character: 9679 }
lineedit-password-mask-delay*
类型 | Number |
QLineEdit将密码字符应用于可见字符之前的延迟(以毫秒为单位)。
如果未指定此属性,则默认为当前样式为SH_LineEdit_PasswordMaskDelay样式提示指定的值。
自Qt 5.4起可用。
示例
* { lineedit-password-mask-delay: 1000 }
margin
类型 | 盒模型长度 |
小部件的边距。相当于指定margin-top
、margin-right
、margin-bottom
和margin-left
。
此属性由以下子类支持:QAbstractItemView、QAbstractSpinBox、QCheckBox、QComboBox、QFrame、QGroupBox、QLabel、QLineEdit、QMenu、QMenuBar、QPushButton、QRadioButton、QSplitter、QTextEdit和QToolTip。
如果未指定此属性,则默认为0
。
示例
QLineEdit { margin: 2px }
margin-top
类型 | 长度 |
小部件的上边距。
margin-right
类型 | 长度 |
小部件的右边距。
margin-bottom
类型 | 长度 |
小部件的下边距。
margin-left
类型 | 长度 |
小部件的左边距。
max-height
类型 | 长度 |
小部件或子控件的最大高度。
此属性由QAbstractItemView子类、QAbstractSpinBox子类、QCheckBox、QComboBox、QFrame、QGroupBox、QLabel、QLineEdit、QMenu、QMenuBar、QPushButton、QRadioButton、QSizeGrip、QSpinBox、QSplitter、QStatusBar、QTextEdit和QToolTip支持。
值相对于盒模型中的内容矩形。
示例
QSpinBox { max-height: 24px }
另请参阅最大宽度。
max-width
类型 | 长度 |
小部件或子控件的最大宽度。
此属性由QAbstractItemView子类、QAbstractSpinBox子类、QCheckBox、QComboBox、QFrame、QGroupBox、QLabel、QLineEdit、QMenu、QMenuBar、QPushButton、QRadioButton、QSizeGrip、QSpinBox、QSplitter、QStatusBar、QTextEdit和QToolTip支持。
值相对于盒模型中的内容矩形。
示例
QComboBox { max-width: 72px }
另请参阅最大高度。
messagebox-text-interaction-flags*
类型 | Number |
消息框中文本的交互行为。可能的值基于Qt::TextInteractionFlags。
如果未指定此属性,则默认为当前样式为SH_MessageBox_TextInteractionFlags样式提示指定的值。
示例
QMessageBox { messagebox-text-interaction-flags: 5 }
min-height
类型 | 长度 |
小部件或子控件的最小高度。
此属性由以下子类支持:QAbstractItemView、QAbstractSpinBox、QCheckBox、QComboBox、QFrame、QGroupBox、QLabel、QLineEdit、QMenu、QMenuBar、QPushButton、QRadioButton、QSizeGrip、QSpinBox、QSplitter、QStatusBar、QTextEdit、QToolButton 和 QToolTip。
如果未指定此属性,则最小高度根据小部件的内容和样式推导得出。
值相对于盒模型中的内容矩形。
示例
QComboBox { min-height: 24px }
注意:设置此属性可能会使小部件比内容所需的空间更小。
另请参阅 min-width。
min-width
类型 | 长度 |
小部件或子控件的最小宽度。
此属性由以下子类支持:QAbstractItemView、QAbstractSpinBox、QCheckBox、QComboBox、QFrame、QGroupBox、QLabel、QLineEdit、QMenu、QMenuBar、QPushButton、QRadioButton、QSizeGrip、QSpinBox、QSplitter、QStatusBar、QTextEdit、QToolButton 和 QToolTip。
如果未指定此属性,则最小宽度根据小部件的内容和样式推导得出。
值相对于盒模型中的内容矩形。
示例
QComboBox { min-width: 72px }
注意:设置此属性可能会使小部件比内容所需的空间更小。
另请参阅 min-height。
opacity*
类型 | Number |
小部件的不透明度。可能的值从 0(透明)到 255(不透明)。目前,这仅支持 ToolTips。
如果未指定此属性,则默认为 SH_ToolTipLabel_Opacity 样式提示指定的值。
示例
QToolTip { opacity: 223 }
outline
绘制在对象边框周围的轮廓。
outline-color
类型 | 颜色 |
轮廓的颜色。另请参阅 border-color
outline-offset
类型 | 长度 |
轮廓与小部件边框的偏移量。
outline-style
指定用于绘制轮廓的图案。另请参阅 border-style
outline-radius
为轮廓添加圆角。
outline-bottom-left-radius
类型 | 半径 |
轮廓底部左圆角的半径。
outline-bottom-right-radius
类型 | 半径 |
轮廓底部右圆角的半径。
outline-top-left-radius
类型 | 半径 |
轮廓顶部左圆角的半径。
outline-top-right-radius
类型 | 半径 |
轮廓顶部右圆角的半径。
padding
类型 | 盒模型长度 |
小部件的填充。相当于指定 padding-top
、padding-right
、padding-bottom
和 padding-left
。
此属性由以下子类支持:QAbstractItemView、QAbstractSpinBox、QCheckBox、QComboBox、QFrame、QGroupBox、QLabel、QLineEdit、QMenu、QMenuBar、QPushButton、QRadioButton、QSplitter、QTextEdit和QToolTip。
如果未指定此属性,则默认为0
。
示例
QLineEdit { padding: 3px }
padding-top
类型 | 长度 |
小部件的顶部填充。
padding-right
类型 | 长度 |
小部件的右侧填充。
padding-bottom
类型 | 长度 |
小部件的底部填充。
padding-left
类型 | 长度 |
小部件的左侧填充。
paint-alternating-row-colors-for-empty-area
类型 | 布尔值 |
QTreeView 是否为空区域(即没有项目的地方)绘制交替行颜色。
占位文本颜色
类型 | 画刷 |
用于文本编辑小部件占位文本的颜色。
如果未设置此属性,则默认值为调色板的 PlaceholderText 角色设置的值。
示例
QLineEdit { placeholder-text-color: #800000ff } /* semi-transparent blue */
自 6.5 版本起可用。
位置
类型 | 相对 | 绝对 |
使用 left、right、top 和 bottom 指定偏移量时,是否为相对或绝对坐标。
如果未指定此属性,则默认为 relative
。
右边距
类型 | 长度 |
如果 position 为 relative
(默认值),则通过一定偏移量向左移动子控件;指定 right: x
相当于指定 left: -x
。
如果 position 为 absolute
,则 right
属性指定子控件相对于父控件右边缘的位置(另见 subcontrol-origin)。
示例
QSpinBox::down-button { right: 2px }
选择的背景颜色
类型 | 画刷 |
所选文本或项的背景。
此属性由所有尊重 QWidget::palette 并且显示选择文本的小部件支持。
如果未设置此属性,则默认值为调色板 Highlight 角色设置的值。
示例
QTextEdit { selection-background-color: darkblue }
另请参阅 selection-color 和 background。
选择的颜色
类型 | 画刷 |
所选文本或项的前景色。
此属性由所有尊重 QWidget::palette 并且显示选择文本的小部件支持。
如果未设置此属性,则默认值为调色板 HighlightedText 角色设置的值。
示例
QTextEdit { selection-color: white }
另请参阅 selection-background-color 和 color。
显示选择的装饰*a class="plink" href="#show-decoration-selected" title="直接链接到此标题">
类型 | Boolean |
控制 QListView 中的选择是否覆盖整个行或仅覆盖文本范围。
如果未指定此属性,则默认为当前样式指定的 SH_ItemView_ShowDecorationSelected 风格提示的值。
示例
* { show-decoration-selected: 1 }
间距
类型 | 长度 |
小部件内部间距。
此属性由 QCheckBox、可勾选的 QGroupBox、QMenuBar 和 QRadioButton 支持。
如果未指定此属性,则默认值取决于小部件和当前样式。
示例
QMenuBar { spacing: 10 }
子控件原点
类型 | 起点 |
子控件在父元素中的原点矩形。
如果未指定此属性,则默认为padding。
示例
QSpinBox::up-button { image: url(:/images/spinup.png); subcontrol-origin: content; subcontrol-position: right top; }
另请参阅 subcontrol-position.
subcontrol-position*
类型 | 对齐 |
指定由 subcontrol-origin 确定的初始矩形内子控件的对齐方式。
如果没有指定此属性,它将默认为依赖于子控件的值。
示例
QSpinBox::down-button { image: url(:/images/spindown.png); subcontrol-origin: padding; subcontrol-position: right bottom; }
另请参阅 subcontrol-origin.
titlebar-show-tooltips-on-buttons
类型 | 布尔值 |
是否在窗口标题栏按钮上显示工具提示。
widget-animation-duration*
类型 | Number |
动画应持续多长时间(以毫秒为单位)。值等于零表示将禁用动画。
如果没有指定此属性,它将默认为当前样式为 SH_Widget_Animation_Duration 风格提示指定的值。
自 Qt 5.10 开始支持。
示例
* { widget-animation-duration: 100 }
text-align
类型 | 对齐 |
在控件内容中文本和图标的对齐方式。
如果没有指定此值,它将默认为依赖于本地样式的值。
示例
QPushButton { text-align: left; }
此属性当前仅由 QPushButton 和 QProgressBar 支持。
text-decoration
类型 | none underline overline line-through |
其他文本效果。
top
类型 | 长度 |
如果 position 是 relative
(默认值),则通过一定的偏移量向下移动子控件。
如果 position 是 absolute
,则 top
属性指定子控件的顶边相对于父控件的顶边(另请参阅 subcontrol-origin)。
如果未指定此属性,则默认为0
。
示例
QSpinBox::up-button { top: 2px }
width
类型 | 长度 |
子控件(或在某些情况下为控件)的宽度。
如果未指定此属性,则默认为依赖于子控件/小部件和当前样式的值。
示例
QSpinBox::up-button { width: 12px }
另请参阅 height。
-qt-background-role
根据所选角色为子控件或控件设置的 background-color
。
-qt-style-features
类型 | list |
您想应用 Qt 特定样式的 CSS 属性列表。
注意:该 list
主要包括不基于像素图的属性。
图标列表
Qt 中使用的图标可以使用以下属性进行自定义。本节中列出的每个属性都具有 Icon 类型。
请注意,要使图标在 QDialogButtonBox 中的按钮上显示,您需要将 dialogbuttonbox-buttons-have-icons 属性设置为 true。此外,要自定义图标的大小,请使用 icon-size 属性。
属性类型列表
以下表格总结了不同属性类型的语法和含义。
类型 | 语法 | 描述 |
---|---|---|
对齐 | { 顶部 | 底部 | 左侧 | 右侧 | 居中 }* | 水平和/或垂直对齐。 示例 QTextEdit { background-position: bottom center } |
附件 | { 滚动 | 固定 }* | 滚动或固定附件。 |
背景 | { 画笔 | Url | 重复 | 对齐 }* | 一系列画笔、Url、重复和对齐。 |
布尔 | 0 | 1 | 真(1 )或假(0 )。示例 QDialog { etch-disabled-text: 1 } |
边框 | { 边框样式 | 长度 | 画笔 }* | 简写边框属性。 |
边框图像 | none | URL 数字{4} ( 拉伸 | 重复 ){0,2} | 边框图像是由九个部分(左上角、右上角、左中、正中心、右中、底左、底中、底右)组成的图像。当需要一定大小的边框时,角部部分直接使用,顶部、右边、底边和左边部分拉伸或重复,从而生成所需大小的边框。 有关详细信息,请参阅 CSS3 草案规范。 |
边框样式 | 虚线 | 点划线 | 点线 | 点划线 | 双线 | 凹槽 | 嵌入 | 凸起 | 脊形 | 实线 | 无 | 指定绘制边框所用的图案。有关详细信息,请参阅 CSS3 草案规范。 |
框颜色 | 画刷{1,4} | 一个到四个 画笔 出现,分别指定框的上、右、下和左边框。如果左边框颜色未指定,则假定与右边框颜色相同。如果底边框颜色未指定,则假定与顶边框颜色相同。如果右边框颜色未指定,则假定与顶边框颜色相同。 示例 |
框边长 | 长度{1,4} | 一个到四个 长度 出现,分别指定框的上、右、下和左边框。如果左边框长度未指定,则假定与右边框长度相同。如果底边框长度未指定,则假定与顶边框长度相同。如果右边框长度未指定,则假定与顶边框长度相同。 示例 |
画笔 | 颜色 | 渐变 | 调色板角色 | 指定颜色、渐变或调色板中的一个条目。 |
颜色 | rgb(r, g, b) | rgba(r, g, b, a) | hsv(h, s, v) | hsva(h, s, v, a) | hsl(h, s, l) | hsla(h, s, l, a) | #rrggbb | 颜色名称 | 指定颜色为 RGB(红、绿、蓝)、RGBA(红、绿、蓝、透明度)、HSV(色调、饱和度、亮度)、HSVA(色调、饱和度、亮度、透明度)、HSL(色调、饱和度、亮度)或命名颜色。可以使用 rgb() 或 rgba() 语法,使用0到255之间的整数值,或使用百分比值。在 hsv() 、hsva() hsl() 或 hsla() 中,s、v、l和a的值必须都在0-255的范围内或以百分比表示,h的值必须为0-359。5.13版本及以后支持HSL(A)。示例 /* opaque red */ QLabel { border-color: red } /* opaque red */ QLabel { border-color: #FF0000 } /* 75% opaque red */ QLabel { border-color: rgba(255, 0, 0, 75%) } /* opaque red */ QLabel { border-color: rgb(255, 0, 0) } /* opaque red */ QLabel { border-color: rgb(100%, 0%, 0%) } /* opaque yellow */ QLabel { border-color: hsv(60, 100%, 100%) } /* 75% blue */ QLabel { border-color: hsva(240, 255, 255, 75%) } /* opaque yellow */ QLabel { border-color: hsl(60, 100%, 50%) } /* 75% blue */ QLabel { border-color: hsla(240, 255, 50%, 75%) } 注意:允许的RGB颜色与CSS 2.1中允许的颜色相同,如此处列表所示。 |
字体 | (字体样式 | 字体粗细){0,2} 字体大小 字符串 | 简写字体属性。 |
字体大小 | 长度 | 字体的尺寸。 |
字体样式 | 正常 | italic | oblique | 字体的样式。 |
字体粗细 | 正常 | bold | 100 | 200 ... | 900 | 字体的粗细。 |
渐变 | qlineargradient | qradialgradient | qconicalgradient | 指定渐变填充。有三种类型的渐变填充
渐变在对象边界模式下指定。想象一下渐变渲染的框,它的左上角在(0, 0),右下角在(1, 1)。然后根据0到1的百分比指定渐变参数。这些值将在运行时外推到实际框坐标。可以指定位于边界框之外(例如-0.6或1.8)的值。 警告:必须按升序顺序出现停止点。 示例 /* linear gradient from white to green */ QTextEdit { background: qlineargradient(x1:0, y1:0, x2:1, y2:1, stop:0 white, stop: 0.4 gray, stop:1 green) } /* linear gradient from white to green */ QTextEdit { background: qlineargradient(x1:0, y1:0, x2:1, y2:1, stop:0 white, stop: 0.4 rgba(10, 20, 30, 40), stop:1 rgb(0, 200, 230, 200)) } /* conical gradient from white to green */ QTextEdit { background: qconicalgradient(cx:0.5, cy:0.5, angle:30, stop:0 white, stop:1 #00FF00) } /* radial gradient from white to green */ QTextEdit { background: qradialgradient(cx:0, cy:0, radius: 1, fx:0.5, fy:0.5, stop:0 white, stop:1 green) } |
图标 | (Url (disabled | active | normal | selected )? (on | off )? )*
| 一个url、QIcon::Mode和QIcon::State的列表。 示例 * { file-icon: url(file.png), url(file_selected.png) selected; } QMessageBox { dialogbuttonbox-buttons-have-icons: true; dialog-ok-icon: url(ok.svg); dialog-cancel-icon: url(cancel.png), url(grayed_cancel.png) disabled; } |
长度 | Number (px | pt | em | ex )? | 一个数字后面跟着一个测量单位。CSS标准建议用户代理必须忽略带有非法值的声明。在Qt中,必须指定测量单位。为了与Qt的早期版本兼容,大多数上下文中不带测量单位的数字被视为像素。支持的单位包括
然而,Qt受限于 |
数字 | 十进制整数或实数 | 例如: 0 ,18 ,+127 ,-255 ,12.34 ,-.5 ,0009 。 |
起点 | 外边距 | border | padding | content | 指示使用四个矩形中的哪一个。
另请参阅盒模型。 |
调色板角色 | alternate-base | accent | base | bright-text | button | button-text | dark | 高亮 | 高亮文本 | 亮色 | 链接 | 已访问链接 | 中间 | 亮中间 | 阴影 | 文本 | 窗口 | 窗口文本 | 这些值对应于小部件的 颜色角色,位于 QPalette 中。 例如, QPushButton { color: palette(dark); } |
半径 | 长度{1, 2} | 一个或两个出现次数的 长度。如果指定了单个长度,则它用作定义角落的四分之一圆的半径。如果指定了两个长度,则第一个长度是四分之一椭圆的水平半径,第二个长度是垂直半径。 |
重复 | repeat-x | repeat-y | repeat | no-repeat | 表示重复性质的值。
|
URL | url(filename) | filename 是本地磁盘上的文件名称或使用 Qt 资源系统 存储的名称。设置图像会隐式设置元素的宽度和高度。 |
伪状态列表
以下伪状态受支持
伪状态 | 描述 |
---|---|
:active | 当小部件位于活动窗口时设置此状态。 |
:adjoins-item | 当 ::branch 的 QTreeView 毗邻某项时设置此状态。 |
:alternate | 在绘制 QAbstractItemView 的行时,将为每行交替设置此状态,当 QAbstractItemView::alternatingRowColors() 设置为 true。 |
:bottom | 该项位于底部。例如,底端放置标签的 QTabBar。 |
:checked | 该项被选中。例如,选中状态的 QAbstractButton。 |
:closable | 该项可以关闭。例如,启用了 QDockWidget::DockWidgetClosable 功能的 QDockWidget。 |
:closed | 该项处于关闭状态。例如,在 QTreeView 中的未展开项。 |
:default | 该项是默认的。例如,默认的 QPushButton 或 QMenu 中的默认操作。 |
:disabled | 该项处于禁用状态。 |
:editable | QComboBox 可编辑。 |
:edit-focus | 该项具有编辑焦点(参见 QStyle::State_HasEditFocus)。此状态仅适用于 Qt Extended 应用程序。 |
:enabled | 该项已启用。 |
:exclusive | 该项目是独家项目组的一部分。例如,在独家 QActionGroup 中的菜单项。 |
:first | 该项目是列表中的第一个(第一个)。例如,在 QTabBar 中的第一个标签页。 |
:flat | 该项目是平的。例如,一个 flat 的 QPushButton。 |
:floatable | 项目可以被浮动。例如,QDockWidget 具有已开启的 QDockWidget::DockWidgetFloatable 功能。 |
:focus | 项目有 输入焦点。 |
:has-children | 项目有子项。例如,一个在 QTreeView 中的有子项的项目。 |
:has-siblings | 项目有兄弟项。例如,在 QTreeView 中的有兄弟项的项目。 |
:horizontal | 项目具有水平方向。 |
:hover | 鼠标悬停在项目上。 |
:indeterminate | 项目处于不确定状态。例如,一个部分勾选的 QCheckBox 或 QRadioButton。 |
:last | 该项目是列表中的最后一个(最后一个)。例如,在 QTabBar 中的最后一个标签页。 |
:left | 项目定位在左侧。例如,将标签定位在左侧的 QTabBar。 |
:maximized | 项目已最大化。例如,一个最大化的 QMdiSubWindow。 |
:middle | 项目在列表中居中。例如,在 QTabBar 中不在起始或结束位置的标签页。 |
:minimized | 项目已最小化。例如,一个最小化的 QMdiSubWindow。 |
:movable | 项目可以被移动。例如,QDockWidget 具有已开启的 QDockWidget::DockWidgetMovable 功能。 |
:no-frame | 项目没有边框。例如,无框的 QSpinBox 或 QLineEdit。 |
:non-exclusive | 该项目是非独家项目组的一部分。例如,在非独家 QActionGroup 中的菜单项。 |
:off | 对于可切换的项目,这适用于处于“关”状态的项目。 |
:on | 对于可切换的项目,这适用于处于“开”状态的控件。 |
:only-one | 该项目是列表中的唯一项目。例如,在 QTabBar 中唯一的标签页。 |
:open | 项目处于打开状态。例如,在 QTreeView 中展开的项目,或者有打开菜单的 QComboBox 或 QPushButton。 |
:next-selected | 以下项目(在列表中)被选中。例如,QTabBar的选中标签就在此项目旁边。 |
:pressed | 使用鼠标按下该项目。 |
:previous-selected | 列表中的上一个项目被选中。例如,在QTabBar中,紧邻选中标签的标签。 |
:read-only | 标记该项目为只读或不可编辑。例如,只读的QLineEdit或不可编辑的QComboBox。 |
:right | 该项目位于右侧。例如,标签位于右侧的QTabBar。 |
:selected | 该项目被选中。例如,在QTabBar中选中的标签或在QMenu中选中的项目。 |
:top | 该项目位于顶部。例如,标签位于顶部的QTabBar。 |
:unchecked | 该项目被取消选中。 |
:vertical | 该项目具有垂直方向。 |
:window | 该小部件是一个窗口(即顶级小部件) |
子控件列表
以下子控件可用
子控件 | 描述 |
---|---|
::add-line | 添加QScrollBar一行按钮。 |
::add-page | 位于QScrollBar的滑块(handle)和add-line之间的区域。 |
::branch | QTreeView的分支指示器。 |
::chunk | QProgressBar的进度块。 |
::close-button | QDockWidget的关闭按钮或QTabBar的标签页。 |
::corner | 位于QAbstractScrollArea中的两个滚动条之间的角。 |
::down-arrow | QComboBox、QHeaderView(排序指示器)、QScrollBar或QSpinBox的下箭头。 |
::down-button | QScrollBar或QSpinBox的下按钮。 |
::drop-down | QComboBox的下拉按钮。 |
::float-button | QDockWidget的浮动按钮。 |
::groove | QSlider的凹槽。 |
::indicator | QAbstractItemView、QCheckBox、QRadioButton、可复选QMenu项或可复选QGroupBox的指示器。 |
::handle | QScrollBar、QSplitter 或 QSlider 的处理(滑块)。 |
::icon | QAbstractItemView 或 QMenu 的图标。 |
::item | QAbstractItemView、QMenuBar、QMenu 或 QStatusBar 中的项。 |
::left-arrow | QScrollBar 的左箭头。 |
::left-corner | QTabWidget 的左角。例如,可以使用这个控件来控制一个 QTabWidget 中左角小部件的位置。 |
::menu-arrow | 带菜单的 QToolButton 的箭头。 |
::menu-button | QToolButton 的菜单按钮。 |
::menu-indicator | QPushButton 的菜单指示器。 |
::right-arrow | QMenu 或 QScrollBar 的右箭头。 |
::pane | QTabWidget 的面板(框架)。 |
::right-corner | QTabWidget 的右角。例如,可以使用这个控件来控制一个 QTabWidget 中右角小部件的位置。 |
::scroller | QMenu 或 QTabBar 的滚动条。 |
::section | QHeaderView 的部分。 |
::separator | QMenu 或 QMainWindow 中的分隔符。 |
::sub-line | 用于 QScrollBar 减少行的按钮。 |
::sub-page | QScrollBar 中处理(滑块)和 sub-line 之间的区域。 |
::tab | QTabBar 或 QToolBox 中的标签。 |
::tab-bar | QTabWidget 的标签栏。这个子控件仅存在于控制 QTabWidget 内的 QTabBar 的位置。要使用 ::tab 子控件来设置标签样式。 |
::tear | QTabBar 的撕裂指示器。 |
::tearoff | QMenu 的撕裂指示器。 |
::text | QAbstractItemView 中的文本。 |
::title | QGroupBox 或 QDockWidget 的标题。 |
::上箭头 | QHeaderView(排序指示器)、QScrollBar或QSpinBox上的上箭头。 |
::上按钮 | QSpinBox上的上按钮。 |
有关如何自定义子控件的一个例子,请参阅自定义 QPushButton 的菜单指示器子控件。
© 2024 Qt 公司有限。其中包含的文档贡献的版权归其各自的所有者。本文件中的文档是根据自由软件基金会发布的GNU 自由文档许可协议版本 1.3许可的。Qt及其相关标志是芬兰和/或其他国家的Qt公司的商标。所有其他商标均是各自所有者的财产。