Qt6垂直QSlider自定义样式:add-page区域宽度异常问题
Qt6垂直QSlider自定义样式:解决add-page导致凹槽宽度异常的问题
问题根源是设置add-page样式时,未为其指定与groove一致的尺寸和外边距,导致Qt样式布局引擎重新计算凹槽区域大小,引发宽度异常。
只需给QSlider::add-page:vertical添加与groove相同的width和margin属性,确保两者布局边界对齐即可解决:
修改后的完整样式表代码:
QSlider:vertical { min-height: 100px; min-width: 20px; background: none; } QSlider::groove:vertical { background: rgb(43, 43, 43); border: 1px solid rgb(43, 43, 43); border-radius: 2px; width: 4px; margin: 0px 17px; } QSlider::handle:vertical { background: white; border: 1px solid white; border-radius: 3px; top: 14px; bottom: 14px; margin: -15px -7px; min-width: 30px; min-height: 30px; } QSlider::add-page:vertical { background: white; width: 4px; margin: 0px 17px; }
通过让add-page的宽度和外边距与groove完全一致,既能保证滑块凹槽区域尺寸恒定,又能实现手柄下方区域的颜色自定义。
内容的提问来源于stack exchange,提问作者ano
相关产品推荐
相关产品推荐

