QTableView的滚动条设置样式

来源:互联网 发布:手机淘宝闲鱼官网主页 编辑:程序博客网 时间:2024/06/03 19:29

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;

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


0 0
原创粉丝点击