每当我将QSlider的凹槽设置为图像(作为图像或背景图像)或背景颜色(但不是颜色)时,我无法拖动它,只能通过单击滑块来移动它来移动它。这是我当前的样式表供参考,这是通过调用setStyleSheet()来设置的
fanSliderOnStyleSheet = "QSlider {padding-left: 80px; padding-right: 80px;} \n"
"QSlider::handle:horizontal{image: url(:/images/FanSlider/blowerSw2.png); padding:-65px; }\n"
"QSlider::groove:horizontal{background-image: url(:/images/FanSlider/barind.png);}\n";
如果我注释掉设置凹槽的线,滑块按预期工作,所以我已经消除了我能想到的滑块的任何其他变量。
注意:我更喜欢将其设置为图像上的背景图像,因为如果我这样做,它会保持真实的大小。
有没有人知道如何解决这个问题,还是偶然发现Qt的错误?在过去的几天里,我一直在撞墙,我的搜索没有透露任何有用的信息。
填充对于句柄来说太高了:如果设置的值高于凹槽属性中图像的大小,则会干扰处理程序的移动(抓取部分将为空)。
当我设置宽度为100px且填充属性为110px的图像时,我得到完全相同的问题。
删除填充,它应该没问题:
fanSliderOnStyleSheet = "QSlider {padding-left: 80px; padding-right: 80px;} \n"
"QSlider::handle:horizontal{image: url(:/images/FanSlider/blowerSw2.png);}\n"
"QSlider::groove:horizontal{background-image: url(:/images/FanSlider/barind.png);}\n";