繁体   English   中英

设置凹槽背景时,QSlider不可拖动

[英]QSlider not draggable when setting groove background

每当我将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的一个错误? 在过去的几天里,我一直在撞墙,而我的搜索没有发现任何有用的信息。

填充对于您的手柄而言太高:如果在groove属性中设置的值大于图像的大小,则它将干扰处理程序的移动( 抓取部分为空)。

当我将图像的宽度设置为100px并将padding属性设置为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";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM