我遇到了QScrollArea的问题。
特别是我找不到合适的QSS规则来删除QSrollArea QFrame和QScroll之间的3px空间。
我想删除的空间是图片中红色箭头指向的空间。我还在QSrollArea的内部QFrame中添加了一个蓝色边框,但它似乎正确结束。
可以在此处找到图片:http://i58.tinypic.com/2h71a2c.png
我在SLED 11 SP2(在GNOME下)使用QT 4.8.5。
我的QSS看起来像这样:
QScrollArea {
background: transparent;
}
QScrollArea > QWidget > QWidget
{
background: transparent;
border: 1px solid black;
margin: 0px 0px 0px 0px;
}
QScrollBar:horizontal
{
border: 1px solid #999999;
background:white;
height:7px;
margin: 0px 0px 0px 0px;
padding: 0px 0px 0px 0px;
}
QScrollBar::handle:horizontal {
background: qlineargradient(x1:0, y1:0, x2:1, y2:0, stop: 0 rgb(32, 47, 130), stop: 0.5 rgb(32, 47, 130), stop:1 rgb(32, 47, 130));
min-width: 20px;
}
QScrollBar::add-line:horizontal {
background: qlineargradient(x1:0, y1:0, x2:1, y2:0, stop: 0 rgb(32, 47, 130), stop: 0.5 rgb(32, 47, 130), stop:1 rgb(32, 47, 130));
height: 0px;
subcontrol-position: right;
subcontrol-origin: margin;
}
QScrollBar::sub-line:horizontal {
background: qlineargradient(x1:0, y1:0, x2:1, y2:0, stop: 0 rgb(32, 47, 130), stop: 0.5 rgb(32, 47, 130), stop:1 rgb(32, 47, 130));
height: 0px;
subcontrol-position: left;
subcontrol-origin: margin;
}
任何想法?
感谢。
答案 0 :(得分:0)
是否必须仅从QSS
和QSS
执行此操作?我认为更改layoutBottomMargin
({em>即 scrollAreaWidgetContents
内的小部件的QScrollArea
将解决问题。