我有QWidget renameWidget,它被称为ui-> renameWidget。在这个中,我有一个QVBoxLayout * renamebox,在这里我有几个标签和短信。
我需要做的是当我按下按钮提交这些短信时,我需要删除QWidget中的所有内容。这将使盒子被清空或清除。
我试图删除vboxlayout,我也试过了:
qDeleteAll(ui->renameWidget->findChildren<QVBoxLayout *>());
没有任何效果,任何想法?
答案 0 :(得分:3)
试
qDeleteAll(ui->renamebox->findChildren<QLabel *>());
qDeleteAll(ui->renamebox->findChildren<QTextEdit *>());
虽然在大多数基于QObject的类上调用deleteLater通常更好,因为它允许在下一次通过事件循环时清理对象,而不是在处理事件的过程中
答案 1 :(得分:1)
qDeleteAll(ui->renamebox->children());
会删除所有孩子。