我正在将小部件添加到布局中。
ui->horizontalLayout->addWidget(tabwidget);
当我执行操作时,qmainwindow会自动调整大小。但是随后我进行了...
tabwidget->setVisible(false);
qs = sizeHint();
resize(qs);
我得到的大小就像选项卡小部件没有从窗口中移除一样。
我制作了一个新按钮。
void MainWindow::on_pushButton_2_clicked()
{
qs = sizeHint();
resize(qs);
}
并且它提供了正确的尺寸。
看起来我需要一些更新函数,但是我找不到它。请给予建议。
MainWindow::updateGeometry()
吗? - dualedvoid QWidget::updateGeometry()
通知布局系统此小部件已更改并可能需要更改几何形状。而tabWidget->updateGeometry()
也不起作用。 - quuxupdate()
或repaint()
,invalidate()
等吗? - dualed