实战PyQt5: 111-可以使用QSS样式表的部件
文章插图
可以使用QSS样式表的部件QSS样式表支持各种部件 , 属性 , 伪状态和子控件 , 从而可以实现定制部件的外观 , 下面我们将详细列出可以使用QSS样式表的部件:
- QAbstractScrollArea:所有派生自QAbstractScrollArea类的子类 , 包括QTextEdit, QAbstractItemView(所有项目视图类) , 都可以通过设置background-attachment属性来实现可滚动背景 。 通过给background-attachment设置fixed和scroll , 背景会固定不动或者跟随滚动 。
- QChecBox: QCheckBox的勾选符号可以使用::indicator子控件来定制 。 默认情况下 , 勾选标记位于部件矩形的左上角 。 QCheckBox的spacing属性可以用于指定勾选标记和文本内容之间的间距 。
- QColumnView:可以使用image属性来设置握柄(grip)的样式 , 可以使用::left-arrow子控件和::right-arrow子控件来设置箭头的样式
- QComboBox:组合下拉框的框架可以使用盒模型(Box Model)设置样式 。 可以使用:: drop-down子控件设置下拉按钮的样式 。 默认情况下 , 下拉按钮位于部件的填充矩形的右上角 。 可以使用:: down-arrow子控件设置下拉按钮内的箭头标记的样式 。 默认情况下 , 箭头位于下拉子控件的内容矩形的中心 。
- QSpinBox(QDoubleSpinBox, QDateEdit,QTimeEdit,QDateTimeEdit):旋转框的框架可以使用盒模型(Box Model)设置样式 。
可以使用::down-button和::down-arrow子控件设置向下按钮和箭头的样式 。 默认情况下 , 向下按钮位于小部件的“填充”矩形的右下角 。 如果没有明确的尺寸 , 则它占据其参考矩形高度的一半 。 底部箭头位于底部按钮的“内容”矩形的中心 。
- QDialog:仅支持background , background-clip和background-origin属性 。
- QDialogButton: 可以使用button-layout属性更改按钮的布局 。
- QDockWidget:支持停靠时标题栏和标题栏按钮的样式 。
关闭按钮和浮动按钮分别使用相对于::title子控件的::close-button和::float-button来进行定位 。 标题栏为垂直时 ,
当标题栏垂直时 , 需要设置:vertical伪状态 。 另外 , 根据QDockWidget.DockWidgetFeature设置:closable , :floatable和:movable pseudo状态 。
注意:使用QMainWindow :: separator设置调整大小句柄(handle)的样式 。
警告:取消QDockWidget时 , 样式表无效 , 因为Qt退出时 , Qt使用本机顶级窗口 。
- QFrame:自Qt4.3开始 , 在QLabel上设置样式表会自动将QFrame的 ::frameStyle属性设置为QFrame :: StyledPanel 。
- QGroupBox:QGroupBox的标题用::title子控件进行定制 , 标题的位置依QGroupBox::textAlignment的具体值而言 。 对于可选的QGroupBox而言 , 标题中还会包含一个勾选标记 , 勾选标记用::indicator来定制 , spacing仍然用于设置勾选标记与文本的间距 。
- QHeaderView:QHeaderView是Model/View框架中的一部分 。 标题视图的各小节(section)使用:: section子控件设置样式 。 ::section支持 :middle, :first, :last, :only-one, :previous-selected, :selected, :checked等伪状态 。 ::up-arrow和::down-arrow用于定制表头的排序标记 。
- QLabel:QLabel不支持:hover伪状态 , 自Qt4.3开始 , 给QLabel设置样式表也就隐式指定了QFrame::frameStyle属性 。
- QLineEdit:selection-color, selection-background-color属性分别指定了选中文本的文本颜色和背景色 , 使用lineedit-password-character属性设置密码字符的样式 。 使用lineedit-password-mask-delay更改密码掩码延迟时间 。
- QListView(QListWidget):当view支持斑马色条时 , alternate-background-color属性指定备选色实现斑马色带 。
选择行为由show-decoration-selected属性控制 。
使用::item子控件可以更精细地控制QListView中的条目 。
- QMainWindow:支持分隔符的样式 。 使用QDockWidget时 , QMainWindow中的分隔符使用:: separator子控件设置样式 。
- QMenu:菜单中的独立项使用::item子控件定制 , 除了常见的伪状态 , ::item还支持:selected, :default, :exclusive以及:non-exclusive等伪状态 。 利用这些伪状态 , 可以为不同状态的菜单项定制出不同的外观 。 对于可勾选的菜单项 , 使用::indicator对勾选标记进行定制 , ::separator则定制菜单项之间的分隔符;对于有子菜单的菜单项 , 其箭头号可以用::right-arrow, ::left-arrow进行定制 , 还有::scroller及::tearoff两个子组件 。
- Wireshark数据包分析实战:TCP报文段重组
- Python爬虫采集网易云音乐热评实战
- Django实战016:django中使用redis详解
- HTTP实战之Wireshark抓包分析
- Wireshark数据包分析实战:网卡卸载
- Python数据分析:数据可视化实战教程
- 实战经验:电商平台遭遇CC攻击,我们是如何应对的?
- Tencent IN对话 | 八位互联网实战家,实战智慧营销商学院
- HLS实战之Wireshark抓包分析
- Vue实战091:Vue项目部署到nginx服务器