我想把我的QScrollbar滚动到中心;我认为这很容易,但是
QScrollBar *bar = ui->scrollArea->horizontalScrollBar();
bar->setValue(bar->maximum()/2);
bar->update();
ui->scrollArea->update();做不到这份工作。哪里出了问题?
发布于 2013-12-13 08:45:56
在Qt的文档中,实际文档长度由下式定义
文档长度= maximum() - minimum() + pageStep() (请参阅QScrollBar类参考)
所以试着替换
int center = (min+max)/2;使用
int center = (max+min+bar->pagestep())/2;发布于 2013-12-12 22:20:41
QScrollBar也有最低要求。因此,要使滚动条居中:
int max = bar->maximum();
int min = bar->minimum();
int center = ( min + max ) / 2;
bar->setValue( center );https://stackoverflow.com/questions/20545783
复制相似问题