QTableView的滚动条设置样式

本文介绍了如何使用setStyleSheet方法来设置QTableView的水平和垂直滚动条的样式。内容包括调整滚动条的margin、padding属性,以实现滚动箭头与边框、滚动按钮之间的距离设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.水平滚动条

pView->horizontalScrollBar()->setStyleSheet(

"QScrollBar:horizontal{height:10px;background:transparent;background-color:rgb(248, 248, 248);margin:0px,0px,0px,0px;padding-left:10px;padding-right:10px;}"
"QScrollBar::handle:horizontal{height:10px;background:lightgray;border-radius:5px;/*min-height:20;*/}"
"QScrollBar::handle:horizontal:hover{height:10px;background:gray;border-radius:5px;/*min-height:20;*/}"
"QScrollBar::add-line:horizontal{/*height:10px;width:10px;*/border-image:url(:/button/images/button/right.png);/*subcontrol-position:right;*/}"
"QScrollBar::sub-line:horizontal{/*height:10px;width:10px;*/border-image:url(:/button/images/button/left.png);/*subcontrol-position:left;*/}"
"QScrollBar::add-line:horizontal:hover{/*height:10px;width:10px;*/border-image:url(:/button/images/button/right_mouseDown.png);/*subcontrol-position:right;*/}"
"QScrollBar::sub-line:horizontal:hover{/*height:10px;width:10px;*/border-image:url(:/button/images/button/left_mouseDown.png);/*subcontrol-position:left;*/}"
"QScrollBar::add-page:horizontal,QScrollBar::sub-page:horizontal{background:transparent;border-radius:5px;}"
);

说明:

  (1)只有height属性,没有width属性,宽度即为QTableView的宽度;

  (2)margin直接这么设置:margin-left:10px;margin-right:10px; 因为分不清margin:0px,0px,0px,0px;这4个各代表什么含义;

             含义:指箭头与边框左侧或右侧之间的距离

  (3)padding-left:10px;padding-right:10px;是指滚动按钮与箭头之间的距离。

             含义:指滚动按钮与箭头之间的距离。


2.垂直滚动条

pView->verticalScrollBar()->setStyleSheet(

"QScrollBar:vertical{width:10px;background:transparent;background-color:rgb(248, 248, 248);margin:0px,0px,0px,0px;padding-top:10px;padding-bottom:10px;}"
"QScrollBar::handle:vertical{width:10px;background:lightgray ;border-radius:5px;min-height:20px;}"
"QScrollBar::handle:vertical:hover{width:10px;background:gray;border-radius:5px;min-height:20px;}"
"QScrollBar::add-line:vertical{height:10px;width:10px;border-image:url(:/button/images/button/down.png);subcontrol-position:bottom;}"
"QScrollBar::sub-line:vertical{height:10px;width:10px;border-image:url(:/button/images/button/up.png);subcontrol-position:top;}"
"QScrollBar::add-line:vertical:hover{height:10px;width:10px;border-image:url(:/button/images/button/down_mouseDown.png);subcontrol-position:bottom;}"
"QScrollBar::sub-line:vertical:hover{height:10px;width:10px;border-image:url(:/button/images/button/up_mouseDown.png);subcontrol-position:top;}"
"QScrollBar::add-page:vertical,QScrollBar::sub-page:vertical{background:transparent;border-radius:5px;}"
);

说明:

  (1)只有width属性,没有height属性,高度即为QTableView的高度;(这边找了很多资料,都没找到如何能改变其高度)

  (2)margin直接这么设置:margin-top:45px;margin-bottom:10px; 因为分不清margin:0px,0px,0px,0px;这4个各代表什么含义;

             含义:指箭头与边框顶部或底部之间的距离

  (3)padding-left:10px;padding-right:10px;

             含义:指滚动按钮与箭头之间的距离。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值