在Qt对象上调用deleteLater()
是否也会删除嵌套对象?例如,我有一个布局,我在其中添加了几个小部件和布局。有时,我需要重绘或删除一些布局和/或小部件:
QWidget* blankWidget = new QWidget(this);
grid = new QGridLayout();
blankWidget->setLayout(grid);
setWidget(blankWidget);
QVBoxLayout* vBox = new QVBoxLayout();
realTimeCheckBox = new QCheckBox("Real Time Rendering", this);
vBox->addWidget(realTimeCheckBox);
grid->addLayout(vBox, 1, 0);
使用其他类似的方法调用是否安全?
grid->deleteLater();
是否删除了网格的每个嵌套布局和小部件?
使用destroyed(QObject*)
信号进行测试。正如评论中强调的那样,它有效。