警告

本节包含从C++自动翻译到Python的代码片段,可能包含错误。

Qt 样式表参考

Qt Style Sheets support various properties, pseudo-states, and subcontrols that make it possible to customize the look of widgets.

可样式化小部件列表

下表列出了可以使用样式表自定义的Qt小部件:

小部件

如何样式化

QAbstractScrollArea .. _qabstractscrollarea-widget:

支持盒模型。所有QAbstractScrollArea的派生类,包括QTextEditQAbstractItemView(所有项目视图类),都支持使用background-attachment来设置可滚动的背景。将background-attachment设置为fixed会提供一个不随视口滚动的背景图像。将background-attachment设置为scroll时,背景图像会随着滚动条的移动而滚动。有关示例,请参见自定义QAbstractScrollArea

QCheckBox .. _qcheckbox-widget:

支持盒模型。可以使用::indicator子控件来样式化复选框指示器。默认情况下,指示器位于小部件内容矩形的左上角。spacing属性指定复选框指示器和文本之间的间距。有关示例,请参见自定义QCheckBox

QColumnView .. _qcolumnview-widget:

可以通过使用image属性来设置手柄的样式。箭头指示器可以通过使用::left-arrow子控件和::right-arrow子控件来设置样式。

QComboBox .. _qcombobox-widget:

组合框周围的框架可以使用盒模型进行样式设置。下拉按钮可以使用::drop-down子控件进行样式设置。默认情况下,下拉按钮位于小部件填充矩形的右上角。下拉按钮内的箭头标记可以使用::down-arrow子控件进行样式设置。默认情况下,箭头位于下拉子控件内容矩形的中心。占位符文本的颜色可以使用placeholder-text-color属性设置。有关示例,请参见自定义QComboBox

QDateEdit .. _qdateedit-widget:

参见 QSpinBox .

QDateTimeEdit .. _qdatetimeedit-widget:

参见 QSpinBox .

QDialog .. _qdialog-widget:

仅支持 background , background-clipbackground-origin 属性。

警告

确保为您的自定义小部件定义了 Q_OBJECT 宏。

QDialogButtonBox .. _qdialogbuttonbox-widget:

按钮的布局可以通过button-layout属性进行更改。

QDockWidget .. _qdockwidget-widget:

支持在停靠时对标题栏和标题栏按钮进行样式设置。可以使用border属性来设置停靠窗口的边框样式。::title子控件可用于自定义标题栏。关闭和浮动按钮分别使用::close-button::float-button相对于::title子控件进行定位。当标题栏垂直时,:vertical伪类被设置。此外,根据DockWidgetFeature:closable:floatable:movable伪状态被设置。

注意

使用QMainWindow::separator来设置调整大小的手柄样式。

警告

QDockWidget未停靠时,样式表无效,因为Qt在未停靠时使用本地的顶级窗口。

参见Customizing QDockWidget以获取示例。

QDoubleSpinBox .. _qdoublespinbox-widget:

参见 QSpinBox .

QFrame .. _qframe-widget:

支持盒模型。自4.3版本起,在QLabel上设置样式表会自动将frameStyle属性设置为StyledPanel。有关示例,请参见自定义QFrame

QGroupBox .. _qgroupbox-widget:

支持盒子模型。标题可以使用::title子控件进行样式设置。默认情况下,标题的位置取决于QGroupBox::textAlignment。在可选的QGroupBox情况下,标题包括选择指示器。指示器使用::indicator子控件进行样式设置。spacing属性可用于控制文本和指示器之间的间距。有关示例,请参见自定义QGroupBox

QHeaderView .. _qheaderview-widget:

支持盒模型。标题视图的部分使用::section子控件进行样式设置。section子控件支持:middle:first:last:only-one:next-selected:previous-selected:selected:checked伪状态。排序指示器可以使用::up-arrow::down-arrow子控件进行样式设置。有关示例,请参见自定义QHeaderView

QLabel .. _qlabel-widget:

支持 盒模型。不支持 :hover 伪状态。自 4.3 版本起,在 QLabel 上设置样式表会自动将 frameStyle 属性设置为 StyledPanel。有关示例,请参见 自定义 QFrameQLabel 继承自 QFrame)。

QLineEdit .. _qlineedit-widget:

支持盒模型。所选项目的颜色和背景分别使用selection-colorselection-background-color进行样式设置。占位符文本的颜色可以使用placeholder-text-color属性进行设置。密码字符可以使用lineedit-password-character属性进行样式设置。密码掩码延迟可以使用lineedit-password-mask-delay进行更改。有关示例,请参见自定义QLineEdit

QListView .. _qlistview-widget:

支持盒模型。当启用alternating row colors时,可以使用alternate-background-color属性来设置交替颜色。选中项的颜色和背景分别使用selection-colorselection-background-color进行样式设置。选择行为由show-decoration-selected属性控制。使用::item子控件可以对QListView中的项进行更精细的控制。有关可滚动背景的样式设置,请参见QAbsractScrollArea。有关示例,请参见自定义QListView

QListWidget .. _qlistwidget-widget:

参见 QListView

QMainWindow .. _qmainwindow-widget:

支持分隔符的样式设置。当使用QDockWidget时,QMainWindow中的分隔符使用::separator子控件进行样式设置。有关示例,请参见自定义QMainWindow

QMenu .. _qmenu-widget:

支持盒模型。单个项目使用::item子控件进行样式设置。除了通常支持的伪状态外,item子控件还支持:selected:default:exclusivenon-exclusive伪状态。可选中菜单项的指示器使用::indicator子控件进行样式设置。分隔符使用::separator子控件进行样式设置。对于有子菜单的项目,箭头标记使用right-arrowleft-arrow进行样式设置。滚动条使用::scroller进行样式设置。撕裂条使用::tearoff进行样式设置。有关示例,请参见自定义QMenu

QMenuBar .. _qmenubar-widget:

支持盒模型spacing属性指定菜单项之间的间距。单个项目使用::item子控件进行样式设置。

警告

在Qt/Mac上运行时,菜单栏通常嵌入到系统范围的菜单栏中。在这种情况下,样式表将不起作用。

参见自定义QMenuBar以获取示例。

QMessageBox .. _qmessagebox-widget:

messagebox-text-interaction-flags 属性可用于更改与消息框中文本的交互方式。

QProgressBar .. _qprogressbar-widget:

支持盒模型。进度条的块可以使用::chunk子控件进行样式设置。块显示在小部件的内容矩形上。如果进度条显示文本,请使用text-align属性来定位文本。不确定的进度条具有:indeterminate伪状态设置。有关示例,请参见自定义QProgressBar

QPushButton .. _qpushbutton-widget:

支持盒模型。支持:default:flat:checked伪状态。自5.15版本起,icon属性可以被设置以覆盖按钮图标。对于带有菜单的QPushButton,菜单指示器使用::menu-indicator子控件进行样式设置。可选中按钮的外观可以使用:open:closed伪状态进行自定义。

警告

如果你只在QPushButton上设置了背景颜色,除非你设置了边框属性,否则背景可能不会显示。这是因为默认情况下,QPushButton会绘制一个完全覆盖背景颜色的原生边框。例如,

QPushButton { background-color: red; border: none; }

参见自定义QPushButton以获取示例。

QRadioButton .. _qradiobutton-widget:

支持盒模型。可以使用::indicator子控件来样式化选择指示器。默认情况下,指示器位于小部件内容矩形的左上角。spacing属性指定选择指示器和文本之间的间距。有关示例,请参见自定义QRadioButton

QScrollBar .. _qscrollbar-widget:

支持盒模型。小部件的内容矩形被认为是滑块移动的凹槽。QScrollBar的范围(即宽度或高度,取决于方向)分别使用widthheight属性设置。要确定方向,请使用:horizontal:vertical伪状态。可以使用::handle子控件来样式化滑块。设置min-widthmin-height根据方向提供滑块的大小约束。::add-line子控件可用于样式化添加一行的按钮。默认情况下,add-line子控件放置在小部件边框矩形的右上角。根据方向,使用::right-arrow::down-arrow。默认情况下,箭头放置在add-line子控件内容矩形的中心。::sub-line子控件可用于样式化减去一行的按钮。默认情况下,sub-line子控件放置在小部件边框矩形的右下角。根据方向,使用::left-arrow::up-arrow。默认情况下,箭头放置在sub-line子控件内容矩形的中心。::sub-page子控件可用于样式化减去一页的滑块区域。::add-page子控件可用于样式化添加一页的滑块区域。有关示例,请参见自定义QScrollBar

QSizeGrip .. _qsizegrip-widget:

支持 widthheightimage 属性。有关示例,请参见 自定义 QSizeGrip

QSlider .. _qslider-widget:

支持盒模型。对于水平滑块,必须提供最小宽度高度属性。对于垂直滑块,必须提供最小高度宽度属性。滑块的凹槽使用::groove进行样式设置。凹槽默认位于小部件的Contents矩形中。滑块的拇指使用::handle子控件进行样式设置。子控件在凹槽子控件的Contents矩形中移动。有关示例,请参见自定义QSlider

QSpinBox .. _qspinbox-widget:

旋转框的框架可以使用盒模型进行样式设置。上按钮和箭头可以使用::up-button::up-arrow子控件进行样式设置。默认情况下,上按钮位于小部件的填充矩形的右上角。如果没有明确的大小,它占据其参考矩形的一半高度。上箭头位于上按钮的内容矩形的中心。下按钮和箭头可以使用::down-button::down-arrow子控件进行样式设置。默认情况下,下按钮位于小部件的填充矩形的右下角。如果没有明确的大小,它占据其参考矩形的一半高度。下箭头位于下按钮的内容矩形的中心。有关示例,请参见自定义QSpinBox

QSplitter .. _qsplitter-widget:

支持盒模型。拆分器的手柄使用::handle子控件进行样式设置。有关示例,请参见自定义QSplitter

QStatusBar .. _qstatusbar-widget:

仅支持 background 属性。可以使用 ::item 子控件来设置单个项目的框架样式。有关示例,请参见 自定义 QStatusBar

QTabBar .. _qtabbar-widget:

可以使用::tab子控件来样式化单个标签。使用::close-button来样式化关闭按钮。标签支持:only-one:first:last:middle:previous–selected:next-selected:selected伪状态。根据标签的方向,支持:top:left:right:bottom伪状态。通过使用负边距或使用absolute定位方案来创建选中状态的重叠标签。QTabBar的撕裂指示器使用::tear子控件进行样式化。QTabBar使用两个QToolButton作为其滚动器,可以使用QTabBar QToolButton选择器进行样式化。要指定滚动按钮的宽度,请使用::scroller子控件。QTabBar内标签的对齐方式使用alignment属性进行样式化。

警告

要更改QTabBarQTabWidget中的位置,请使用tab-bar子控件(并设置子控件位置)。

参见自定义QTabBar以获取示例。

QTabWidget .. _qtabwidget-widget:

选项卡小部件的框架使用::pane子控件进行样式设置。左右角分别使用::left-corner::right-corner进行样式设置。选项卡栏的位置使用::tab-bar子控件进行控制。默认情况下,子控件的位置是QWindowsStyle中的QTabWidget。要将QTabBar放置在中心,请设置选项卡栏子控件的子控件位置。:top:left:right:bottom伪状态取决于选项卡的方向。有关示例,请参见自定义QTabWidget

QTableView .. _qtableview-widget:

支持盒模型。当启用交替行颜色时,可以使用alternate-background-color属性来设置交替颜色的样式。所选项目的颜色和背景分别使用selection-colorselection-background-color进行样式设置。QTableView中的角落部件实现为QAbstractButton,可以使用“QTableView QTableCornerButton::section”选择器进行样式设置。

警告

如果您仅在QTableCornerButton上设置了background-color,除非您将border属性设置为某个值,否则背景可能不会显示。这是因为默认情况下,QTableCornerButton会绘制一个完全覆盖背景颜色的原生边框。

可以使用gridline-color属性指定网格线的颜色。有关可滚动背景的样式设置,请参见QAbsractScrollArea。有关示例,请参见自定义QTableView

QTableWidget .. _qtablewidget-widget:

参见 QTableView

QTextEdit .. _qtextedit-widget:

支持盒模型。选中文本的颜色和背景分别使用selection-colorselection-background-color进行样式设置。占位符文本的颜色可以使用placeholder-text-color属性进行设置。请参阅QAbsractScrollArea以设置可滚动背景的样式。

QTimeEdit .. _qtimeedit-widget:

参见 QSpinBox .

QToolBar .. _qtoolbar-widget:

支持盒模型。根据工具栏分组的区域,:top:left:right:bottom伪状态会有所不同。:first:last:middle:only-one伪状态指示工具栏在一行组中的位置(参见QStyleOptionToolBar::positionWithinLine)。QToolBar的分隔符使用::separator子控件进行样式设置。工具栏的移动手柄使用::handle子控件进行样式设置。有关示例,请参见自定义QToolBar

QToolButton .. _qtoolbutton-widget:

支持盒模型。如果QToolButton有菜单,可以使用::menu-indicator子控件来样式化指示器。默认情况下,菜单指示器位于小部件的Padding矩形的右下角。如果QToolButton处于MenuButtonPopup模式,则使用::menu-button子控件来绘制菜单按钮。::menu-arrow子控件用于在菜单按钮内绘制菜单箭头。默认情况下,它位于菜单按钮子控件的Contents矩形的中心。当QToolButton显示箭头时,使用::up-arrow::down-arrow::left-arrow::right-arrow子控件。

警告

如果你只在QToolButton上设置了背景颜色,除非你设置了边框属性,否则背景不会显示。这是因为默认情况下,QToolButton会绘制一个完全覆盖背景颜色的原生边框。例如,

QToolButton { background-color: red; border: none; }

参见自定义QToolButton以获取示例。

QToolBox .. _qtoolbox-widget:

支持盒子模型。可以使用::tab子控件来样式化各个标签。标签支持:only-one:first:last:middle:previous-selected:next-selected:selected伪状态。

QToolTip .. _qtooltip-widget:

支持盒模型透明度属性控制工具提示的透明度。有关示例,请参见自定义QFrameQToolTipQFrame)。

QTreeView .. _qtreeview-widget:

支持盒模型。当启用交替行颜色时,可以使用alternate-background-color属性来设置交替颜色的样式。选中项的颜色和背景分别使用selection-colorselection-background-color来设置样式。选择行为由show-decoration-selected属性控制。树视图的分支可以使用::branch子控件来设置样式。::branch子控件支持:open:closed:has-sibling:has-children伪状态。使用::item子控件可以对QTreeView中的项进行更精细的控制。请参阅QAbsractScrollArea来设置可滚动背景的样式。请参阅自定义QTreeView以获取设置分支样式的示例。

QTreeWidget .. _qtreewidget-widget:

参见 QTreeView

QWidget .. _qwidget-widget:

仅支持 backgroundbackground-clipbackground-origin 属性。如果你从 QWidget 子类化,你需要为你的自定义 QWidget 提供一个 paintEvent,如下所示:

def paintEvent(self, arg__0):

    opt = QStyleOption()
    opt.initFrom(self)
    p = QPainter(self)
    style().drawPrimitive(QStyle.PE_Widget, opt, p, self)

如果没有设置样式表,上述代码将不执行任何操作。

警告

确保为你的自定义小部件定义 Q_OBJECT 宏。

属性列表

本节列出了Qt样式表支持的所有属性。可以为属性赋予哪些值取决于属性的类型。除非另有说明,以下属性适用于所有小部件。标有星号*的属性是Qt特有的,在CSS2或CSS3中没有等效项。Qt特有的属性如下:

accent-color

类型

Brush

该属性设置Accent,用于强调交互式UI元素。如果未设置此属性,则默认为highlight颜色。

交替背景颜色

类型

Brush

QAbstractItemView子类中使用的alternate background color

如果未设置此属性,则默认值为调色板的AlternateBase角色所设置的任何值。

示例:

QTreeView {
    alternate-background-color: blue;
    background: yellow;
}

另请参阅 backgroundselection-background-color

背景

类型

背景

设置背景的简写符号。相当于指定background-colorbackground-imagebackground-repeat和/或background-position

此属性由QAbstractItemView子类、QAbstractSpinBox子类、QCheckBoxQComboBoxQDialogQFrameQGroupBoxQLabelQLineEditQMenuQMenuBarQPushButtonQRadioButtonQSplitterQTextEditQToolTip以及普通的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-attachmentalternate-background-color

背景颜色

类型

Brush

用于小部件的背景颜色。

示例:

QLabel { background-color: yellow }
QLineEdit { background-color: rgb(255, 0, 0) }

背景图片

类型

Url

用于小部件的背景图像。图像的半透明部分让background-color透过来。

示例:

QFrame { background-image: url(:/images/hydro.png) }

背景重复

类型

重复

背景图像是否以及如何重复以填充background-origin矩形。

如果未指定此属性,背景图像将在两个方向上重复(repeat)。

示例:

QFrame {
    background: white url(:/images/ring.png);
    background-repeat: repeat-y;
    background-position: left;
}

背景位置

类型

Alignment

背景图像在background-origin矩形内的对齐方式。

如果未指定此属性,对齐方式为top left

示例:

QFrame {
    background: url(:/images/footer.png);
    background-position: bottom left;
}

背景附件

类型

附件

确定QAbstractScrollArea中的背景图像是相对于视口滚动还是固定。默认情况下,背景图像会随视口滚动。

示例:

QTextEdit {
    background-image: url("leaves.png");
    background-attachment: fixed;
}

另请参阅 background

背景裁剪

类型

来源

小部件的矩形,在其中绘制background

此属性指定了background-colorbackground-image被裁剪到的矩形区域。

此属性由QAbstractItemView子类、QAbstractSpinBox子类、QCheckBoxQComboBoxQDialogQFrameQGroupBoxQLabelQPushButtonQRadioButtonQSplitterQTextEditQToolTip以及普通的QWidget支持。

如果未指定此属性,则默认为border

示例:

QFrame {
    background-image: url(:/images/header.png);
    background-position: top left;
    background-origin: content;
    background-clip: padding;
}

另请参阅 backgroundbackground-originThe Box Model

背景原点

类型

来源

小部件的背景矩形,与background-positionbackground-image一起使用。

此属性由QAbstractItemView子类、QAbstractSpinBox子类、QCheckBoxQComboBoxQDialogQFrameQGroupBoxQLabelQPushButtonQRadioButtonQSplitterQTextEditQToolTip以及普通的QWidget支持。

如果未指定此属性,则默认为padding

示例:

QFrame {
    background-image: url(:/images/header.png);
    background-position: top left;
    background-origin: content;
}

另请参阅 backgroundThe Box Model

边框

类型

Border

用于设置小部件边框的简写符号。相当于指定border-colorborder-style和/或border-width

此属性由QAbstractItemView子类、QAbstractSpinBox子类、QCheckBoxQComboBoxQFrameQGroupBoxQLabelQLineEditQMenuQMenuBarQPushButtonQRadioButtonQSplitterQTextEditQToolTip以及普通的QWidget支持。

示例:

QLineEdit { border: 1px solid white }

border-top

类型

边框

设置小部件顶部边框的简写符号。等同于指定 border-top-color, border-top-style, 和/或 border-top-width

右边框

类型

Border

设置小部件右边框的简写符号。等同于指定 border-right-color, border-right-style, 和/或 border-right-width

border-bottom

类型

Border

用于设置小部件底部边框的简写符号。等同于指定border-bottom-colorborder-bottom-style和/或border-bottom-width

左边框

类型

边框

用于设置小部件左边框的简写符号。等同于指定 border-left-color, border-left-style, 和/或 border-left-width

边框颜色

类型

Box Colors

所有边框边缘的颜色。等同于指定 border-top-color, border-right-color, border-bottom-color, 和 border-left-color

此属性由QAbstractItemView子类、QAbstractSpinBox子类、QCheckBoxQComboBoxQFrameQGroupBoxQLabelQLineEditQMenuQMenuBarQPushButtonQRadioButtonQSplitterQTextEditQToolTip以及普通的QWidget支持。

如果未指定此属性,则默认为color(即小部件的前景色)。

示例:

QLineEdit {
    border-width: 1px;
    border-style: solid;
    border-color: white;
}

另请参阅 border-styleborder-widthborder-imageThe Box Model

border-top-color

类型

Brush

边框顶边的颜色。

border-right-color

类型

Brush

边框右侧边缘的颜色。

border-bottom-color

类型

Brush

边框底边的颜色。

border-left-color

类型

Brush

边框左侧边缘的颜色。

边框图像

类型

边框图像

用于填充边框的图像。图像被切割成九部分,并在必要时适当拉伸。详情请参见边框图像

此属性由QAbstractItemView子类、QAbstractSpinBox子类、QCheckBoxQComboBoxQFrameQGroupBoxQLabelQLineEditQMenuQMenuBarQPushButtonQRadioButtonQSplitterQTextEditQToolTip支持。

另请参阅 border-color , border-style , border-width , 以及 The Box Model

边框圆角

类型

半径

边框角的半径。等同于指定 border-top-left-radius, border-top-right-radius, border-bottom-right-radius, 和 border-bottom-left-radius

border-radius 裁剪了元素的 background

此属性由QAbstractItemView子类、QAbstractSpinBox子类、QCheckBoxQComboBoxQFrameQGroupBoxQLabelQLineEditQMenuQMenuBarQPushButtonQRadioButtonQSplitterQTextEditQToolTip支持。

如果未指定此属性,则默认为0。

示例:

QLineEdit {
    border-width: 1px;
    border-style: solid;
    border-radius: 4px;
}

另请参阅 border-widthThe Box Model

左上角圆角

类型

半径

边框左上角的半径。

border-top-right-radius

类型

半径

边框右上角的半径。

右下角边框半径

类型

半径

边框右下角的半径。将此属性设置为正值会导致圆角。

border-bottom-left-radius

类型

半径

边框左下角的半径。将此属性设置为正值会导致圆角。

边框样式

类型

边框样式

所有边框边缘的样式。

此属性由QAbstractItemView子类、QAbstractSpinBox子类、QCheckBoxQComboBoxQFrameQGroupBoxQLabelQLineEditQMenuQMenuBarQPushButtonQRadioButtonQSplitterQTextEditQToolTip支持。

如果未指定此属性,则默认为none

示例:

QLineEdit {
    border-width: 1px;
    border-style: solid;
    border-color: blue;
}

另请参阅 border-color , border-style , border-image , 以及 The Box Model

border-top-style

类型

边框样式 }

边框顶边的样式。

border-right-style

类型

边框样式

边框右侧边缘的样式。

border-bottom-style

类型

边框样式

边框底边的样式。

左边框样式

类型

边框样式

边框左侧边缘的样式。

边框宽度

类型

Box Lengths

边框的宽度。相当于设置 border-top-width, border-right-width, border-bottom-width, 和 border-left-width

此属性由QAbstractItemView子类、QAbstractSpinBox子类、QCheckBoxQComboBoxQFrameQGroupBoxQLabelQLineEditQMenuQMenuBarQPushButtonQRadioButtonQSplitterQTextEditQToolTip支持。

示例:

QLineEdit {
    border-width: 2px;
    border-style: solid;
    border-color: darkblue;
}

另请参阅 border-color , border-radius , border-style , border-image , 以及 The Box Model

border-top-width

类型

长度

边框顶边的宽度。

border-right-width

类型

长度

边框右侧的宽度。

border-bottom-width

类型

长度

边框底边的宽度。

左边框宽度

类型

长度

边框左侧边缘的宽度。

底部

类型

长度

如果 positionrelative(默认值),则将子控件向上移动一定偏移量;指定 bottom:y 相当于指定 `` top : -y``。

如果 positionabsolute,则 bottom 属性指定子控件的底边相对于父控件底边的位置(另请参阅 subcontrol-origin )。

示例:

QSpinBox::down-button { bottom: 2px }

另请参阅 left , right , 和 top

按钮布局

类型

数字

按钮在QDialogButtonBoxQMessageBox中的布局。可能的值为0(WinLayout)、1(MacLayout)、2(KdeLayout)、3(GnomeLayout)和5(AndroidLayout)。

如果未指定此属性,则默认为当前样式为SH_DialogButtonLayout样式提示指定的值。

示例:

* { button-layout: 2 }

颜色

类型

Brush

用于渲染文本的颜色。

此属性受所有遵循palette的小部件支持。

如果未设置此属性,则默认值为小部件调色板中为foregroundRole设置的值(通常为黑色)。

示例:

QPushButton { color: red }

另请参阅 backgroundselection-color

对话框按钮框-按钮有图标

类型

Boolean

是否在QDialogButtonBox中的按钮显示图标

如果此属性设置为1,QDialogButtonBox的按钮将显示图标;如果设置为0,则不显示图标。

请参阅图标列表部分,了解如何设置图标的信息。

QDialogButtonBox { dialogbuttonbox-buttons-have-icons: 1; }

注意

定义此属性的样式必须在创建QDialogButtonBox之前应用;这意味着您必须将样式应用于父部件或应用程序本身。

字体

类型

字体

设置文本字体的简写符号。等同于指定font-familyfont-sizefont-style和/或font-weight

此属性受所有支持font的小部件支持。

如果未设置此属性,则默认为 font

示例:

QCheckBox { font: bold italic large "Times New Roman" }

字体族

类型

字符串

字体家族。

示例:

QCheckBox { font-family: "New Century Schoolbook" }

字体大小

类型

字体大小

字体大小。在此版本的Qt中,仅支持pt和px度量单位。

示例:

QTextEdit { font-size: 12px }

字体样式

类型

字体样式

字体样式。

示例:

QTextEdit { font-style: italic }

字体粗细

类型

字体粗细

字体的粗细。

网格线颜色*

类型

颜色

QTableView 中网格线的颜色。

如果未指定此属性,则默认为当前样式为SH_Table_GridLineColor样式提示指定的值。

示例:

* { gridline-color: gray }

高度

类型

长度

子控件(或在某些情况下,小部件)的高度。

如果未指定此属性,则默认为取决于子控件/小部件和当前样式的值。

警告

除非另有说明,否则在部件上设置此属性时无效。如果您想要一个具有固定高度的部件,请将min-heightmax-height设置为相同的值。

示例:

QSpinBox::down-button { height: 10px }

另请参阅 width

图标

类型

Url +

用于具有图标的小部件的图标。

目前支持此属性的唯一小部件是 QPushButton

注意

应用程序有责任为按钮分配图标(使用QAbstractButton API),而不是样式的责任。因此,除非你的样式表针对特定的应用程序,否则在设置时要小心。

自5.15版本起可用。

图标大小

类型

长度

小部件中图标的宽度和高度。

以下小部件的图标大小可以使用此属性进行设置。

图片*

类型

Url +

在子控件的内容矩形中绘制的图像。

图像属性接受一个Url列表或一个svg。绘制的实际图像使用与QIcon相同的算法确定(即图像永远不会放大,但必要时会缩小)。如果指定了svg,图像将缩放到内容矩形的大小。

在子控件上设置图像属性会隐式设置子控件的宽度和高度(除非图像是SVG格式)。

在 Qt 4.3 及更高版本中,可以使用 image-position 指定图像在矩形内的对齐方式。

此属性仅适用于子控件——我们不支持其他元素使用它。

警告

需要QIcon SVG插件来渲染SVG图像。

示例:

// implicitly sets the size of down-button to the
// size of spindown.png
QSpinBox::down-button { image: url(:/images/spindown.png) }

图像位置

类型

alignment

在 Qt 4.3 及更高版本中,可以使用相对或绝对位置来指定图像 image 的位置对齐方式。

left

类型

长度

如果 positionrelative(默认值),则将子控件向右移动一定的偏移量。

如果 positionabsolute,则 left 属性指定子控件的左边缘相对于父控件的左边缘的位置(另请参阅 subcontrol-origin )。

如果未指定此属性,则默认为0

示例:

QSpinBox::down-button { left: 2px }

另请参阅 right , top , 和 bottom

lineedit-password-character*

类型

数字

QLineEdit 密码字符作为 Unicode 数字。

如果未指定此属性,则默认为当前样式为SH_LineEdit_PasswordCharacter样式提示指定的值。

示例:

* { lineedit-password-character: 9679 }

lineedit-password-mask-delay*

类型

数字

QLineEdit 密码掩码延迟,单位为毫秒,在lineedit-password-character应用于可见字符之前。

如果未指定此属性,则默认为当前样式为SH_LineEdit_PasswordMaskDelay样式提示指定的值。

自 Qt 5.4 起可用。

示例:

* { lineedit-password-mask-delay: 1000 }

边距

类型

Box Lengths

小部件的边距。相当于指定 margin-top, margin-right, margin-bottom, 和 margin-left

此属性由QAbstractItemView子类、QAbstractSpinBox子类、QCheckBoxQComboBoxQFrameQGroupBoxQLabelQLineEditQMenuQMenuBarQPushButtonQRadioButtonQSplitterQTextEditQToolTip支持。

如果未指定此属性,则默认为0

示例:

QLineEdit { margin: 2px }

另请参阅 paddingspacingThe Box Model

上边距

类型

长度

小部件的上边距。

右边距

类型

长度

小部件的右边距。

底部边距

类型

长度

小部件的底部边距。

左边距

类型

长度

小部件的左边距。

最大高度

类型

长度

小部件或子控件的最大高度。

此属性由QAbstractItemView子类、QAbstractSpinBox子类、QCheckBoxQComboBoxQFrameQGroupBoxQLabelQLineEditQMenuQMenuBarQPushButtonQRadioButtonQSizeGripQSpinBoxQSplitterQStatusBarQTextEditQToolTip支持。

该值相对于盒模型中的内容矩形。

示例:

QSpinBox { max-height: 24px }

另请参阅 max-width

最大宽度

类型

长度

小部件或子控件的最大宽度。

此属性由QAbstractItemView子类、QAbstractSpinBox子类、QCheckBoxQComboBoxQFrameQGroupBoxQLabelQLineEditQMenuQMenuBarQPushButtonQRadioButtonQSizeGripQSpinBoxQSplitterQStatusBarQTextEditQToolTip支持。

该值相对于盒模型中的内容矩形。

示例:

QComboBox { max-width: 72px }

另请参阅 max-height

消息框文本交互标志*

类型

数字

消息框中文本的交互行为。可能的值基于Qt::TextInteractionFlags。

如果未指定此属性,则默认为当前样式为SH_MessageBox_TextInteractionFlags样式提示指定的值。

示例:

QMessageBox { messagebox-text-interaction-flags: 5 }

最小高度

类型

长度

小部件或子控件的最小高度。

此属性由QAbstractItemView子类、QAbstractSpinBox子类、QCheckBoxQComboBoxQFrameQGroupBoxQLabelQLineEditQMenuQMenuBarQPushButtonQRadioButtonQSizeGripQSpinBoxQSplitterQStatusBarQTextEditQToolButtonQToolTip支持。

如果未指定此属性,则最小高度将根据小部件的内容和样式派生。

该值相对于盒模型中的内容矩形。

示例:

QComboBox { min-height: 24px }

注意

设置此属性可能会使小部件缩小到小于内容所需的空间。

另请参阅 min-width

最小宽度

类型

长度

小部件或子控件的最小宽度。

此属性由QAbstractItemView子类、QAbstractSpinBox子类、QCheckBoxQComboBoxQFrameQGroupBoxQLabelQLineEditQMenuQMenuBarQPushButtonQRadioButtonQSizeGripQSpinBoxQSplitterQStatusBarQTextEditQToolButtonQToolTip支持。

如果未指定此属性,则最小宽度将根据小部件的内容和样式派生。

该值相对于盒模型中的内容矩形。

示例:

QComboBox { min-width: 72px }

注意

设置此属性可能会使小部件缩小到小于内容所需的空间。

另请参阅 min-height

不透明度*

类型

数字

小部件的不透明度。可能的值范围从0(透明)到255(不透明)。目前,这仅支持tooltips

如果未指定此属性,则默认为当前样式为SH_ToolTipLabel_Opacity样式提示指定的值。

示例:

QToolTip { opacity: 223 }

大纲

围绕对象边框绘制的轮廓。

轮廓颜色

类型

颜色

轮廓的颜色。另请参阅 border-color

轮廓偏移

类型

长度

轮廓与部件边框的偏移量。

轮廓样式

指定用于绘制轮廓的模式。另请参阅 border-style

轮廓半径

为轮廓添加圆角。

轮廓底部左侧半径

类型

半径

轮廓左下角圆角的半径。

轮廓右下角半径

类型

半径

轮廓右下角圆角的半径。

轮廓左上角半径

类型

半径

轮廓左上角的半径。

轮廓右上角半径

类型

半径

轮廓右上角圆角的半径。

填充

类型

Box Lengths

小部件的内边距。等同于指定 padding-top, padding-right, padding-bottom, 和 padding-left

此属性由QAbstractItemView子类、QAbstractSpinBox子类、QCheckBoxQComboBoxQFrameQGroupBoxQLabelQLineEditQMenuQMenuBarQPushButtonQRadioButtonQSplitterQTextEditQToolTip支持。

如果未指定此属性,则默认为0

示例:

QLineEdit { padding: 3px }

另请参阅 marginspacingThe Box Model

上内边距

类型

长度

小部件的顶部填充。

右内边距

类型

长度

小部件的右侧填充。

底部内边距

类型

长度

小部件的底部填充。

左内边距

类型

长度

小部件的左内边距。

为空白区域绘制交替行颜色

类型

bool

是否QTreeView为空区域(即没有项目的区域)绘制交替的行颜色

placeholder-text-color*

类型

Brush

用于文本编辑小部件的占位符文本的颜色。

如果未设置此属性,则默认值为调色板的PlaceholderText角色所设置的任何值。

示例:

QLineEdit { placeholder-text-color: #800000ff } /* semi-transparent blue */

自6.5版本起可用。

位置

类型

relative | absolute

使用leftrighttopbottom指定的偏移量是相对坐标还是绝对坐标。

如果未指定此属性,则默认为relative

selection-background-color*

类型

Brush

所选文本或项目的背景。

此属性受所有尊重palette并显示选择文本的小部件支持。

如果未设置此属性,则默认值为调色板的Highlight角色所设置的值。

示例:

QTextEdit { selection-background-color: darkblue }

另请参阅 selection-colorbackground

selection-color*

类型

Brush

所选文本或项目的前景色。

此属性受所有尊重palette并显示选择文本的小部件支持。

如果未设置此属性,则默认值为调色板的HighlightedText角色所设置的任何值。

示例:

QTextEdit { selection-color: white }

另请参阅 selection-background-colorcolor

显示装饰选择*

类型

Boolean

控制QListView中的选择是覆盖整行还是仅覆盖文本的范围。

如果未指定此属性,则默认为当前样式为SH_ItemView_ShowDecorationSelected样式提示指定的值。

示例:

* { show-decoration-selected: 1 }

间距*

类型

长度

小部件内部的间距。

此属性由QCheckBox、可选的QGroupBoxQMenuBarQRadioButton支持。

如果未指定此属性,默认值取决于小部件和当前样式。

示例:

QMenuBar { spacing: 10 }

另请参阅 paddingmargin

子控件原点*

类型

来源

子控件在父元素内的原始矩形。

如果未指定此属性,则默认为padding

示例:

QSpinBox::up-button {
    image: url(:/images/spinup.png);
    subcontrol-origin: content;
    subcontrol-position: right top;
}

另请参阅 subcontrol-position

子控件位置*

类型

Alignment

子控件在由subcontrol-origin指定的原始矩形内的对齐方式。

如果未指定此属性,则默认为取决于子控件的值。

示例:

QSpinBox::down-button {
    image: url(:/images/spindown.png);
    subcontrol-origin: padding;
    subcontrol-position: right bottom;
}

另请参阅 subcontrol-origin

titlebar-show-tooltips-on-buttons

类型

bool

是否在窗口标题栏按钮上显示工具提示。

widget-animation-duration*

类型

数字

动画应该持续多长时间(以毫秒为单位)。值为零意味着动画将被禁用。

如果未指定此属性,则默认为当前样式为SH_Widget_Animation_Duration样式提示指定的值。

自 Qt 5.10 起可用。

示例:

* { widget-animation-duration: 100 }

文本对齐

类型

Alignment

小部件内容中文本和图标的对齐方式。

如果未指定此值,则默认为依赖于本机样式的值。

示例:

QPushButton {
    text-align: left;
}

此属性目前仅由QPushButtonQProgressBar支持。

文本装饰

类型

none underline overline line-through

额外的文本效果。

顶部

类型

长度

如果 positionrelative(默认值),则将子控件向下移动一定的偏移量。

如果positionabsolutetop属性指定子控件的上边缘相对于父控件的上边缘的位置(另请参见subcontrol-origin)。

如果未指定此属性,则默认为0

示例:

QSpinBox::up-button { top: 2px }

另请参阅 left , right , 和 bottom .

宽度

类型

长度

子控件(或在某些情况下的小部件)的宽度。

如果未指定此属性,则默认为取决于子控件/小部件和当前样式的值。

警告

除非另有说明,否则在部件上设置此属性时无效。如果您想要一个固定宽度的部件,请将min-widthmax-width设置为相同的值。

示例:

QSpinBox::up-button { width: 12px }

另请参阅 height

-qt-background-role

类型

PaletteRole

基于所选角色的子控件或小部件的background-color

-qt-style-features

类型

list

您希望应用Qt特定样式的CSS属性列表。

注意

list 只能包含非基于像素图的属性。

图标列表

在Qt中使用的图标可以使用以下属性进行自定义。本节中列出的每个属性的类型都是Icon

请注意,为了使图标出现在QDialogButtonBox的按钮中,您需要将dialogbuttonbox-buttons-have-icons属性设置为true。此外,要自定义图标的大小,请使用icon-size属性。

名称

StandardPixmap

后退图标

SP_ArrowBack

cd图标

SP_DriveCDIcon

电脑图标

SP_ComputerIcon

桌面图标

SP_DesktopIcon

对话框应用图标

SP_DialogApplyButton

对话框取消图标

SP_DialogCancelButton

对话框关闭图标

SP_DialogCloseButton

对话框丢弃图标

SP_DialogDiscardButton

对话框帮助图标

SP_DialogHelpButton

无图标对话框

SP_DialogNoButton

对话框-确定-图标

SP_DialogOkButton

对话框打开图标

SP_DialogOpenButton

对话框重置图标

SP_DialogResetButton

对话框保存图标

SP_DialogSaveButton

对话框-是-图标

SP_DialogYesButton

目录关闭图标

SP_DirClosedIcon

目录图标

SP_DirIcon

目录链接图标

SP_DirLinkIcon

目录打开图标

SP_DirOpenIcon

dockwidget-关闭图标

SP_DockWidgetCloseButton

向下箭头图标

SP_ArrowDown

dvd图标

SP_DriveDVDIcon

文件图标

SP_FileIcon

文件链接图标

SP_FileLinkIcon

文件对话框内容视图图标

SP_FileDialogContentsView

文件对话框-详细视图图标

SP_FileDialogDetailedView

文件对话框结束图标

SP_FileDialogEnd

文件对话框信息视图图标

SP_FileDialogInfoView

文件对话框列表视图图标

SP_FileDialogListView

文件对话框-新建目录图标

SP_FileDialogNewFolder

文件对话框-父目录-图标

SP_FileDialogToParent

文件对话框-开始图标

SP_FileDialogStart

软盘图标

SP_DriveFDIcon

前进图标

SP_ArrowForward

硬盘图标

SP_DriveHDIcon

主页图标

SP_DirHomeIcon

行编辑清除按钮图标

SP_LineEditClearButton

左箭头图标

SP_ArrowLeft

消息框-关键图标

SP_MessageBoxCritical

信息框-信息图标

SP_MessageBoxInformation

消息框-问题图标

SP_MessageBoxQuestion

消息框警告图标

SP_MessageBoxWarning

网络图标

SP_DriveNetIcon

右箭头图标

SP_ArrowRight

标题栏上下文帮助图标

SP_TitleBarContextHelpButton

标题栏最大化图标

SP_TitleBarMaxButton

标题栏菜单图标

SP_TitleBarMenuButton

标题栏最小化图标

SP_TitleBarMinButton

标题栏-普通图标

SP_TitleBarNormalButton

标题栏阴影图标

SP_TitleBarShadeButton

标题栏取消阴影图标

SP_TitleBarUnshadeButton

垃圾桶图标

SP_TrashIcon

上箭头图标

SP_ArrowUp

属性类型列表

下表总结了不同属性类型的语法和含义。

类型

语法

描述

对齐方式 .. _alignment:

{ top | bottom | left | right | center }*

水平和/或垂直对齐。

示例:

QTextEdit { background-position: bottom center }

附件 .. _attachment:

{ scroll | fixed }*

滚动或固定附件。

背景 .. _background:

{ Brush | Url | Repeat | Alignment }*

一个由 Brush , Url , Repeat , 和 Alignment 组成的序列。

布尔值 .. _boolean:

0 | 1

真 (1) 或假 (0).

示例:

QDialog { etch-disabled-text: 1 }

边框 .. _border:

{ 边框样式 | 长度 | 画笔 }*

简写的边框属性。

边框图像 .. _border-image:

none | Url Number {4} (stretch | repeat){0,2}

边框图像是由九个部分组成的图像(左上、中上、右上、左中、中、右中、左下、中下和右下)。当需要特定大小的边框时,角落部分保持不变,而顶部、右侧、底部和左侧部分会被拉伸或重复以生成所需大小的边框。

详情请参阅CSS3草案规范

边框样式 .. _border-style:

dashed | dot-dash | dot-dot-dash | dotted | double | groove | inset | outset | ridge | solid | none

指定用于绘制边框的图案。详情请参阅CSS3草案规范

盒子颜色 .. _box-colors:

Brush {1,4}

一到四个Brush的出现,分别指定盒子的上、右、下和左边缘。如果未指定左颜色,则与右颜色相同。如果未指定下颜色,则与上颜色相同。如果未指定右颜色,则与上颜色相同。

示例:

/* 红色 红色 红色 红色 */
QLabel { border-color: red }
/* 红色 蓝色 红色 蓝色 */
QLabel { border-color: red blue }
/* 红色 蓝色 绿色 蓝色 */
QLabel { border-color: red blue green }
/* 红色 蓝色 绿色 黄色 */
QLabel { border-color: red blue green yellow }

盒子长度 .. _box-lengths:

长度 {1,4}

一到四个长度的出现,分别指定盒子的上、右、下和左边缘。如果未指定左长度,则取与右长度相同。如果未指定下长度,则取与上长度相同。如果未指定右长度,则取与上长度相同。

示例:

/* 1px 1px 1px 1px */
QLabel { border-width: 1px }
/* 1px 2px 1px 2px */
QLabel { border-width: 1px 2px }
/* 1px 2px 3px 2px */
QLabel { border-width: 1px 2px 3px }
/* 1px 2px 3px 4px */
QLabel { border-width: 1px 2px 3px 4px }

画笔 .. _brush:

颜色 | 渐变 | 调色板角色

指定颜色、渐变或调色板中的条目。

Color .. _color:

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 | Color Name

Specifies a color as RGB (red, green, blue), RGBA (red, green, blue, alpha), HSV (hue, saturation, value), HSVA (hue, saturation, value, alpha), HSL (hue, saturation, lightness), HSLA (hue, saturation, lightness, alpha) or a named color. The rgb() or rgba() syntax can be used with integer values between 0 and 255, or with percentages. The value of s, v, l and a in hsv(), hsva() hsl() or hsla() must all be in the range 0-255 or with percentages, the value of h must be in the range 0-359. The support for HSL(A) is available since 5.13.

Examples:

/* 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%) }

Note

The RGB colors allowed are the same as those allowed with CSS 2.1, as listed here .

字体 .. _font:

( Font Style | Font Weight ){0,2} Font Size String

简写的字体属性。

字体大小 .. _font-size:

长度

字体的大小。

字体样式 .. _font-style:

normal | italic | oblique

字体的样式。

字体粗细 .. _font-weight:

normal | bold | 100 | 200 … | 900

字体的粗细。

Gradient .. _gradient:

qlineargradient | qradialgradient | qconicalgradient

Specifies gradient fills. There are three types of gradient fills:

  • Linear gradients interpolate colors between start and end points.

  • Radial gradients interpolate colors between a focal point and end points on a circle surrounding it.

  • Conical gradients interpolate colors around a center point.

Gradients are specified in Object Bounding Mode. Imagine the box in which the gradient is rendered, to have its top left corner at (0, 0) and its bottom right corner at (1, 1). Gradient parameters are then specified as percentages from 0 to 1. These values are extrapolated to actual box coordinates at runtime. It is possible specify values that lie outside the bounding box (-0.6 or 1.8, for instance).

Warning

The stops have to appear sorted in ascending order.

Examples:

/* 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)
}

图标 .. _icon:

( 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;
}

长度 .. _length:

数字 (px | pt | em | ex)?

一个数字后跟一个测量单位。CSS标准建议用户代理必须忽略具有非法值的声明。在Qt中,必须指定测量单位。为了与早期版本的Qt兼容,大多数情况下没有测量单位的数字被视为像素。支持的单位有:

  • px: 像素

  • pt: 一个点的大小(即1/72英寸)

  • em: 相对于元素字体大小的尺寸(例如,2em表示字体大小的2倍)

  • ex: 字体的x高度(即‘x’的高度)

然而,Qt仅限于ptpx的字体大小,任何其他大小必须为pxemex

数字 .. _number:

一个十进制整数或实数

示例:0, 18, +127, -255, 12.34, -.5, 0009.

起源 .. _origin:

margin | border | padding | content

指示使用四个矩形中的哪一个。

  • margin: 外边距矩形。外边距位于边框之外。

  • border: 边框矩形。这是绘制任何边框的地方。

  • padding: 内边距矩形。与外边距不同,内边距位于边框内部。

  • content: 内容矩形。这指定了实际内容的位置,不包括任何内边距、边框或外边距。

另请参阅 盒子模型

PaletteRole .. _paletterole:

alternate-base | accent | base | bright-text | button | button-text | dark | highlight | highlighted-text | light | link | link-visited | mid | midlight | shadow | text | window | window-text

这些值对应于小部件的QPalette中的颜色角色。

例如,

QPushButton { color: palette(dark); }

半径 .. _radius:

长度 {1, 2}

一个或两个长度的出现。如果只指定了一个长度,它将被用作定义角落的四分之一圆的半径。如果指定了两个长度,第一个长度是四分之一椭圆的水平半径,而第二个长度是垂直半径。

重复 .. _repeat:

repeat-x | repeat-y | repeat | no-repeat

表示重复性质的值。

  • repeat-x: 水平重复。

  • repeat-y: 垂直重复。

  • repeat: 水平和垂直重复。

  • no-repeat: 不重复。

Url .. _url:

url(filename)

filename 是本地磁盘上或使用Qt资源系统存储的文件的名称。设置图像会隐式设置元素的宽度和高度。

伪状态列表

支持以下伪状态:

伪状态

描述

:active .. _active:

当小部件位于活动窗口中时,设置此状态。

:adjoins-item .. _adjoins-item-ps:

::branchQTreeView与一个项目相邻时,设置此状态。

:alternate .. _alternate-ps:

alternatingRowColors()设置为true时,此状态在绘制QAbstractItemView的行时为每个交替行设置。

:bottom .. _bottom-ps:

该项目位于底部。例如,一个QTabBar将其标签定位在底部。

:checked .. _checked-ps:

该项目已被选中。例如,QAbstractButtonchecked 状态。

:closable .. _closable-ps:

这些项目可以被关闭。例如,QDockWidget 开启了 DockWidgetClosable 功能。

:closed .. _closed-ps:

该项目处于关闭状态。例如,QTreeView中的未展开项目

:default .. _default-ps:

该项目是默认的。例如,一个default QPushButtonQMenu 中的默认操作。

:disabled .. _disabled-ps:

该项目是 disabled

:editable .. _editable-ps:

QComboBox 是可编辑的。

:edit-focus .. _edit-focus-ps:

该项目具有编辑焦点(参见State_HasEditFocus)。此状态仅适用于Qt Extended应用程序。

:enabled .. _enabled-ps:

该项目是 enabled

:exclusive .. _exclusive-ps:

该项目是独占项目组的一部分。例如,独占QActionGroup中的菜单项。

:first .. _first-ps:

该项目是列表中的第一个。例如,QTabBar中的第一个标签。

:flat .. _flat-ps:

该项目是平的。例如,一个flat QPushButton

:floatable .. _floatable-ps:

这些项目可以浮动。例如,QDockWidget 开启了 DockWidgetFloatable 功能。

:focus .. _focus-ps:

该项目具有 input focus

:has-children .. _has-children-ps:

该项目有子项。例如,QTreeView 中的一个具有子项的项目。

:has-siblings .. _has-siblings-ps:

该项目有兄弟项目。例如,QTreeView中的一个项目有兄弟项目。

:horizontal .. _horizontal-ps:

该项目具有水平方向

:hover .. _hover-ps:

鼠标悬停在项目上。

:indeterminate .. _indeterminate-ps:

该项目处于不确定状态。例如,QCheckBoxQRadioButton 被部分选中。

:last .. _last-ps:

该项是列表中的最后一个。例如,QTabBar 中的最后一个标签。

:left .. _left-ps:

项目位于左侧。例如,一个QTabBar,其标签位于左侧。

:maximized .. _maximized-ps:

该项目已最大化。例如,一个最大化的 QMdiSubWindow

:middle .. _middle-ps:

项目位于中间(在列表中)。例如,在QTabBar中不在开头或结尾的标签。

:minimized .. _minimized-ps:

该项目已最小化。例如,一个最小化的 QMdiSubWindow

:movable .. _movable-ps:

该项目可以移动。例如,QDockWidget 开启了 DockWidgetMovable 功能。

:no-frame .. _no-frame-ps:

该项目没有框架。例如,无框架的 QSpinBoxQLineEdit

:non-exclusive .. _non-exclusive-ps:

该项目是非独占项目组的一部分。例如,非独占QActionGroup中的菜单项。

:off .. _off-ps:

对于可以切换的项目,这适用于处于“关闭”状态的项目。

:on .. _on-ps:

对于可以切换的项目,这适用于处于“开启”状态的小部件。

:only-one .. _only-one-ps:

该项目是唯一的(在列表中)。例如,QTabBar 中的唯一标签。

:open .. _open-ps:

项目处于打开状态。例如,QTreeView 中的展开项目,或者带有打开菜单的 QComboBoxQPushButton

:next-selected .. _next-selected-ps:

下一个项目(在列表中)被选中。例如,QTabBar的选中标签紧挨着这个项目。

:pressed .. _pressed-ps:

该项目正在使用鼠标按下。

:previous-selected .. _previous-selected-ps:

前一个项目(在列表中)被选中。例如,在QTabBar中,紧邻选中标签的标签。

:read-only .. _read-only-ps:

该项目被标记为只读或不可编辑。例如,一个只读的QLineEdit或一个不可编辑的QComboBox

:right .. _right-ps:

该项目位于右侧。例如,一个QTabBar,其标签位于右侧。

:selected .. _selected-ps:

该项目被选中。例如,QTabBar 中的选中标签或 QMenu 中的选中项。

:top .. _top-ps:

该项目位于顶部。例如,一个QTabBar,其标签位于顶部。

:unchecked .. _unchecked-ps:

该项目是 unchecked

:vertical .. _vertical-ps:

该项目具有垂直方向。

:window .. _window-ps:

该小部件是一个窗口(即顶级小部件)

子控件列表

以下子控件可用:

子控制

描述

::add-line .. _add-line-sub:

用于添加一行QScrollBar的按钮。

::add-page .. _add-page-sub:

滑块(slider)和add-line之间的区域,属于QScrollBar

::branch .. _branch-sub:

QTreeView 的分支指示器。

::chunk .. _chunk-sub:

QProgressBar 的进度块。

::close-button .. _close-button-sub:

QDockWidgetQTabBar 标签的关闭按钮

::corner .. _corner-sub:

QAbstractScrollArea 中两个滚动条之间的角落

::down-arrow .. _down-arrow-sub:

QComboBoxQHeaderView(排序指示器)、QScrollBarQSpinBox 的下箭头。

::down-button .. _down-button-sub:

QScrollBarQSpinBox 的下按钮。

::drop-down .. _drop-down-sub:

QComboBox 的下拉按钮。

::float-button .. _float-button-sub:

QDockWidget的浮动按钮

::groove .. _groove-sub:

QSlider 的凹槽。

::indicator .. _indicator-sub:

指示器,用于 QAbstractItemViewQCheckBoxQRadioButton、可选的 QMenu 项目或可选的 QGroupBox

::handle .. _handle-sub:

一个QScrollBarQSplitterQSlider的句柄(滑块)。

::icon .. _icon-sub:

QAbstractItemViewQMenu 的图标。

::item .. _item-sub:

QAbstractItemViewQMenuBarQMenuQStatusBar 中的一个项目。

::left-arrow .. _left-arrow-sub:

QScrollBar 的左箭头。

::left-corner .. _left-corner-sub:

QTabWidget 的左侧角落。例如,此控件可用于控制 QTabWidget 中左侧角落控件的位置。

::menu-arrow .. _menu-arrow-sub:

带有菜单的QToolButton的箭头。

::menu-button .. _menu-button-sub:

QToolButton 的菜单按钮。

::menu-indicator .. _menu-indicator-sub:

QPushButton 的菜单指示器。

::right-arrow .. _right-arrow-sub:

QMenuQScrollBar 的右箭头。

::pane .. _pane-sub:

QTabWidget 的窗格(框架)。

::right-corner .. _right-corner-sub:

QTabWidget 的右上角。例如,此控件可用于控制 QTabWidget 中右上角控件的位置。

::scroller .. _scroller-sub:

QMenuQTabBar 的滚动条。

::section .. _section-sub:

QHeaderView 的部分。

::separator .. _separator-sub:

QMenuQMainWindow 中的分隔符。

::sub-line .. _sub-line-sub:

用于减去QScrollBar一行的按钮。

::sub-page .. _sub-page-sub:

滑块(手柄)和sub-line之间的区域,属于QScrollBar

::tab .. _tab-sub:

QTabBarQToolBox 的标签。

::tab-bar .. _tab-bar-sub:

QTabWidget 的标签栏。此子控件仅用于控制 QTabBarQTabWidget 内部的位置。要使用 ::tab 子控件来设置标签的样式。

::tear .. _tear-sub:

QTabBar 的撕裂指示器。

::tearoff .. _tearoff-sub:

QMenu 的撕下指示器。

::text .. _text-ps:

QAbstractItemView 的文本。

::title .. _title-sub:

QGroupBoxQDockWidget 的标题。

::up-arrow .. _up-arrow-sub:

QHeaderView(排序指示器)、QScrollBarQSpinBox 的上箭头。

::up-button .. _up-button-sub:

QSpinBox 的上按钮。

请参阅自定义QPushButton的菜单指示器子控件以了解如何自定义子控件的示例。