实现如下:
void re_init(QLayout *hLayout)
{
QLayoutItem *child;
while ((child = hLayout->takeAt(0)) != 0)
{
//setParent为NULL,防止删除之后界面不消失
if (child->widget())
{
child->widget()->setParent(NULL);
}
else if (child->layout())
{
re_init(child->layout());
child->layout()->setParent(NULL);
}
delete child;
}
}