所以在我的 UI 设计器中,我有一个 ScrollArea 小部件,然后在我的 MainWindow.cpp 中,我创建了一个 QGraphicScene 和一个 QGraphics 视图。我创建了一个新的小部件并给该小部件一个 QVBoxLayout 以便它自动调整大小(这对我的理解是正确的)。
然后我用ui->scrollArea->setWidget(widget);
这个新的小部件作为我的 scrollView 的孩子。
所有这一切似乎都是正确的,因为我有滚动条可以用来导航我的场景。然而; 使用该行ui->scrollArea->horizontalScrollBar()->setValue(0);
仍然对滚动条值没有影响。
scene = new QGraphicsScene();
scene->setSceneRect(0,0,2500,2500);
view = new QGraphicsView(scene);
QWidget *widget = new QWidget;
view->setBackgroundBrush(Qt::white);
QVBoxLayout* bLayout = new QVBoxLayout(widget);
ui->scrollArea->setWidget(widget);
bLayout->addWidget(view);
widget->show();
ui->scrollArea->horizontalScrollBar()->setValue(0);
ui->scrollArea->verticalScrollBar()->setValue(0);