我有一个网格布局,其上有4个组框。当我尝试使用groupBox->hide()
隐藏其中一个QGroupBox时,组框不再可见。但是空间被保留在布局中(我没有使用QSizePolicy
来保留空间)
如何确保剩余小部件自动使用空间?
在图片中,我隐藏了“第2组”。我希望Group 3自动填满空间。我该怎么做呢?
为了使布局能够执行您想要的操作,其子窗口小部件必须“正常”运行。即如果您的某个组合框包含垂直间隔,则可能会弄乱您的布局。
我发现将样式表设置为toplevel小部件有助于调试布局问题:
pWidget->setStyleSheet("border: 1px solid red;");
这将在(某些)小部件周围绘制红色边框,并阐明谁使用哪个空间。
您可以尝试在第三组框下面添加一个垂直间隔,以将它们全部向上“推”。如果其中一个组框被设置为不可见,则其他组应该被推高,组框1和3之间的空间应该消失。