1

如何将具有多个 QPushButtons 50px 的 QVBoxLayout 移动到顶部?

这是我的代码。我试过this->adjustSize(),this->repaint(),但它不动。

// get current geometry
QRect geo = ui->VBoxLayout->geometry();

// apply geometry, but substract 50px from y() to move it to the top
ui->VBoxLayout->setGeometry(
    QRect(geo.x(), geo.y() - 50, geo.width(), geo.height())
);
4

1 回答 1

0

QVBoxLayout 不能独立移动。解决方案是将QVBoxLayout嵌入到一个相同大小的QWidget中(ui->VBoxLayout inside ui->RightSideWidget)。QWidget 可以通过 move() 移动。

QRect geoWidget = ui->RightSideWidget->geometry();
ui->RightSideWidget->move(geoWidget.x(), geoWidget.y() - 50);
于 2014-07-16T13:38:41.087 回答