gpt4 book ai didi

Qt - 更改 QWidget 布局

转载 作者:行者123 更新时间:2023-12-04 10:21:49 25 4
gpt4 key购买 nike

假设我们有一个 QWidget和一个 QLayout命名 general_layout包含其他小部件和布局。 general_layout设置为 QWidget布局是这样的:

setLayout(general_layout)

现在我应该改变 QWidget 的内容.我怎样才能做到这一点?我试图删除并为 QWidget 创建一个新布局并将新布局设置为 QWidget 的布局,但无法成功完成我的意图。

这是我的代码:
delete general_layout;
general_layout = new QHBoxLayout;
general_layout->addLayout(some_layout);
myQWidget->setLayout(general_layout);

最佳答案

问题是删除布局时不会破坏布局的小部件。这导致 myQWidget 的所有子小部件仍然存在,即使没有布局。

解决方法很简单:添加一个

qDeleteAll(myQWidget->children());


delete general_layout;

关于Qt - 更改 QWidget 布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2990283/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com