我有 QWidget renameWidget,它被称为 ui->renameWidget。在其中,我有一个 QVBoxLayout *renamebox,在其中我有几个标签和文本编辑器。
我需要做的是,当我按下按钮提交这些文本编辑时,我需要删除 QWidget 中的所有内容。这将产生盒子被清空或清除的效果。
我试过只删除 vboxlayout,我也试过这个:
qDeleteAll(ui->renameWidget->findChildren<QVBoxLayout *>());
没有任何效果,有什么想法吗?
最佳答案
尝试
qDeleteAll(ui->renamebox->findChildren<QLabel *>());
qDeleteAll(ui->renamebox->findChildren<QTextEdit *>());
尽管在大多数基于 QObject 的类上调用 deleteLater 通常更好,因为它允许在事件循环的下一次传递中清理对象,而不是在正在处理的事件中间
关于c++ - QT清除小部件内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24918875/