当我用stylesheet定制QScrollBar时,背景色想用纯色时,却发现是种color-dotted的颜色,并不是纯色。如下:
QScrollBar:horizontal {
background-color: grey;
}
事实上当我们提到的背景实际上是两个子元素add-page
和sub-page
展示的。我们需要重新定义背景上的这两个子元素。
通常的做法是移除这两个子元素,然后背景将会继承QScrollBar的背景色grey
:
QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal {
background: none;
}
如果你希望,也可以单独定制两子元素你希望的样式:
QScrollBar::sub-page:horizontal {
background: red;
}
QScrollBar::add-page:horizontal {
background: green;
}