操作步骤:qt生产带ui的界面文件中使用setlayout无效
原因分析:ui文件默认带有layout,需要删除之后再设置setlayout才可用
删除方法可参考如下:(qt帮助手册有)
void clearLayout(QLayout* layout)
{
QLayoutItem* child;
while (0 != (child = layout->takeAt(0)))
{
if (auto w = child->widget())
{
if (w->layout())
{
clearLayout(w->layout());
}
delete w;
}
if (auto l = child->layout())
{
clearLayout(l);
}
delete child;
}
}