在我的项目中,我有一个Group框,其中包含一些可能需要隐藏的元素,以及其他元素的上方和下方。如果我用setHidden(true)隐藏这些元素,则隐藏元素,但在其他元素之间留下较大的空间。
隐藏这些元素后,我怎么能够压缩组合框,所以没有这么大的空间?
答案 0 :(得分:0)
没有代码,有点难以猜测,缺少什么。
在隐藏框后,您是否在保留组框的布局上尝试了QLayout::invalidate()
?
答案 1 :(得分:0)
原因不在于invalidate()。这是因为您在GroupBox内容上布局不正确。如果你隐藏()或show(),任何QWidget QT都会自动使一切可能受可见性变化影响的最顶层父项无效。所以在你的情况下QGroupBox缺少布局,所以你隐藏了元素,没有什么可以改变QGroupBox几何,这就是为什么你看不到预期的拉伸。