一、不会的情况
- QGridLayout layout ;
-
- Form* f1 = new Form();
- Form* f2 = new Form();
- Form* f3 = new Form();
- Form* f4 = new Form();
- Form* f5 = new Form();
-
- layout.addWidget(f1, 0, 0);
- layout.addWidget(f2, 0, 1);
- layout.addWidget(f3, 0, 2);
- layout.addWidget(f4, 1, 0);
- layout.addWidget(f5, 1, 1);
-
- //layout 析构后, form 并不会进入析构
二、可以的情况
- QGridLayout* layout = new QGridLayout;
-
- Form* f1 = new Form();
- Form* f2 = new Form();
- Form* f3 = new Form();
- Form* f4 = new Form();
- Form* f5 = new Form();
-
- layout->addWidget(f1, 0, 0);
- layout->addWidget(f2, 0, 1);
- layout->addWidget(f3, 0, 2);
- layout->addWidget(f4, 1, 0);
- layout->addWidget(f5, 1, 1);
-
-
- ui->widget->setLayout(layout);
-
- //通过为layout设置父对象实现了所以子控件的父对象设置