如何在_1300081中隐藏滚动条?目前我在 QScrollArea::horizontalScrollBar() 和 QScrollArea::verticalScrollBar() 返回的滚动条上使用 hide() 方法,但仍保留为滚动条保留的空间 . 显然这看起来非常丑陋并且不节省空间 . 如果我完全删除滚动条,则无法再使用 QScrollBar::setValue() 轻松滚动到特定点 .
QScrollArea::horizontalScrollBar()
QScrollArea::verticalScrollBar()
hide()
QScrollBar::setValue()
使用此代码:
QAbstractScrollArea::setHorizontalScrollBarPolicy( Qt::ScrollBarAlwaysOff ) QAbstractScrollArea::setVerticalScrollBarPolicy( Qt::ScrollBarAlwaysOff )
您可以使用样式表隐藏它 . 使用 height:0px; 隐藏水平滚动条,使用 width=0px; 隐藏垂直滚动条 . 像那样:
height:0px;
width=0px;
horizontalScrollBar()->setStyleSheet("QScrollBar {height:0px;}"); verticalScrollBar()->setStyleSheet("QScrollBar {width:0px;}");
瞧!没有滚动条,你仍然可以使用 setValue() 来操纵它们 .
setValue()
是的,我想了3年的答案 . 所以我终于可以给自己买些零食 .
从Qt documents到 scrollContentsBy() :
scrollContentsBy()
调用此函数以便以编程方式滚动是一个错误,请改用滚动条(例如直接调用QScrollBar :: setValue()) .
这段代码可以完成这项工作:
setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); verticalScrollBar()->hide(); verticalScrollBar()->resize(0, 0);
4 回答
使用此代码:
您可以使用样式表隐藏它 . 使用
height:0px;
隐藏水平滚动条,使用width=0px;
隐藏垂直滚动条 . 像那样:瞧!没有滚动条,你仍然可以使用
setValue()
来操纵它们 .是的,我想了3年的答案 . 所以我终于可以给自己买些零食 .
从Qt documents到
scrollContentsBy()
:这段代码可以完成这项工作: