需求时这样的:根据配置动态增加一些控件到指定的布局中,但是在添加控件到布局中时,需要先把布局中的控件都删除。
//清空m_layoutMain原布局内的所有元素
QLayoutItem *child;
while ((child = m_layoutMain->takeAt(0)) != nullptr) {
if(child->widget()) {
child->widget()->setParent(nullptr);//setParent(nullptr),防止删除之后界面不消失
delete child->widget();//释放
}
delete child;
}