Q更改凹槽背景时滑块手柄被隐藏

问题描述 投票:0回答:1

我正在尝试更改凹槽的背景图像,并在手柄上设置图像。

在这样做时,我遇到了一种情况,当我将背景设置为任何东西时,手柄(有效)被凹槽覆盖。

这个简单的示例显示了当我只更改颜色而不更改其他内容时的问题。凹槽用这段代码覆盖了手柄。 (用户现在无法滑动)我错过了一些关键的东西。我错过了什么?

mySlider = new QSlider(centralWidget);
mySlider->setObjectName(QStringLiteral("mySlider"));
mySlider->setGeometry(QRect(960, 500, 100, 25));
mySlider->setOrientation(Qt::Horizontal);
mySlider->setStyleSheet("QSlider::groove:horizontal {background-color:yellow;}");

滑块如下所示:

c++ qt qt5 qtstylesheets qslider
1个回答
0
投票

这似乎是一个错误,似乎手柄被调整到使其看不见的大小,但如果它可以移动有些困难。我用以下代码检查了最后一个语句。

 connect(mySlider, &QSlider::valueChanged, [=](int value){
     qDebug()<<value;
 });

建议放置宽度和高度,例如:

mySlider->setStyleSheet("QSlider::groove:horizontal {background-color:yellow;}"
                        "QSlider::handle:horizontal {background-color:blue; height:16px; width: 16px;}");

© www.soinside.com 2019 - 2024. All rights reserved.