You need to enable JavaScript to run this app. 如何在PyQt5中将QScrollBar滚动条的上下箭头修改为三角样式
优惠活动
大模型
产品
解决方案
定价
更多

如何在PyQt5中将QScrollBar滚动条的上下箭头修改为三角样式

你当前箭头显示为方形是因为直接为箭头控件设置了纯色背景,可通过QSS的border透明填充技巧实现正/倒三角形效果,无需引入外部图片,修改方法如下:

  • 移除原有合并编写的上下箭头公共样式规则
  • 分别编写上箭头、下箭头的独立样式,通过设置不同方向的边框显示颜色、其余方向边框设为透明实现三角形效果

修改后的完整QSS代码如下:

QScrollBar:vertical {
    background: rgb(220,220,220);
    width: 15px;
    margin: 22px 0 22px 0; 
}

QScrollBar::handle:vertical {
    background: rgb(169,169,169);
    min-height: 10px; 
}

QScrollBar::add-line:vertical {
    border: 0px solid grey;
    background: rgb(220,220,220);
    height: 20px;
    subcontrol-position: bottom;
    subcontrol-origin: margin; 
}

QScrollBar::sub-line:vertical {
    border: 0px solid red;
    background: rgb(220,220,220);
    height: 20px;
    subcontrol-position: top;
    subcontrol-origin: margin;
}

/* 顶部向上正三角形 */
QScrollBar::up-arrow:vertical {
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 5px solid black;
}

/* 底部向下倒三角形 */
QScrollBar::down-arrow:vertical {
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 5px solid black;
}

如果需要调整箭头尺寸,同步修改border对应的像素值即可,数值越大三角形越大。

内容的提问来源于stack exchange,提问作者tckraomuqnt

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.14 04:15:03