在Qt中,如何更改滑块的背景颜色?

时间:2017-03-09 06:32:38

标签: qt background-color palette

我想更改滑块的背景颜色,但此代码不起作用:

QPalette p( ui->verticalScrollBar->palette());
p.setColor( QPalette::Window, Qt::red );
ui->verticalScrollBar->setPalette(p);

2 个答案:

答案 0 :(得分:0)

我更喜欢在Qt控件上使用样式表。这应该将背景颜色设置为红色。

ui->verticalScrollBar->setStyleSheet("QSlider::groove:horizontal {background-color:red;}");

答案也在这里:

QSlider handle is being hidden when changing the background of the groove

答案 1 :(得分:0)

看一下Qt文档,他们有一个关于自定义QSlider的例子:

http://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider

更改CSS类background的{​​{1}}属性应该可以解决问题。