我没有找到解决方案,我的问题与两个QLayouts
。我需要应用QHBoxLayout
与可能expandind,当我将添加新的小部件,按钮,...。 所以我有:一个QDialog
和两个布局。现在我知道我无法隐藏布局。 所以我只是托盘:Qt隐藏QLayout(切换两种布局)
layout()->removeItem(firstlayout);
layout()->addLayout(secondLayout);
但我这样做的时候,我看到possition [0,0]在第一布局中的所有项目。 所以下一步我尝试:
for (all items in first layout) if (widget) widget->hide();
但这是只使用了QWidget
,我有很多的布局不同的项目。
简单的方法是使用小部件,因为可以使用隐藏/显示,但是当我添加新项目时我需要自动扩展窗口。
确定QStakedWidget是好的,但如果我将添加到此小部件QVBoxLayout并进入此布局许多按钮。 QStakedWidget是否会根据扩展QVBoxLayout进行扩展(当按钮有固定高度时)? – Lodhart