如何在Qt中使布局不可见?
我在对话框中添加了一个布局,有时我希望它和它包含的所有小部件都隐藏起来。如何实施?我尝试了如何在Qt中使布局不可见?,qt,layout,Qt,Layout,我在对话框中添加了一个布局,有时我希望它和它包含的所有小部件都隐藏起来。如何实施?我尝试了layout->setEnable(false),但它在我的测试中似乎不起作用。你不能这样做。您应该在表单中添加一个小部件,将子部件放在小部件中,并为小部件分配所需的布局。行为大体相同,但您可以使用小部件的setVisible或hide方法。首先将QLayout转换为QWidget,然后可以使用QWidget->hide()。 虽然帕维尔的回答有点正确,但“你不能那样做。”这一点是误导性的。这个答案更有用,
layout->setEnable(false)
,但它在我的测试中似乎不起作用。你不能这样做。您应该在表单中添加一个小部件,将子部件放在小部件中,并为小部件分配所需的布局。行为大体相同,但您可以使用小部件的setVisible
或hide
方法。首先将QLayout转换为QWidget,然后可以使用QWidget->hide()。
虽然帕维尔的回答有点正确,但“你不能那样做。”这一点是误导性的。这个答案更有用,因为它显示了一种简便的UI diven方法,只需几次单击即可获得所需的结果。你可以这么做。@M\M Imo,不,你不能这么做。不能在布局上调用隐藏。您需要将布局转换为小部件,这正是Pavel的回答。此答案不提供额外信息。谁关心图形用户界面。@Swedgin:我不知道你说“谁关心图形用户界面”是什么意思。这是关于QLayout和QWidget的——它们都是GUI元素,所以我认为可能每个读到这个问题的人都关心GUI,至少23+个投票支持这个答案的人。。。另外,我刚刚意识到,也许你指的是谁关心GUI驱动的解决OP问题的方法。同样的答案——至少23人。