如果我创建了类似
QPushButton* btn= new QPushButton("Text",this);
的任何小部件,那么父小部件是否会完全销毁所有子小部件,或者只是将它们从其内部列表中删除?
我应该只使用
delete btn;
还是需要使用btn->deleteLater();
来彻底摧毁它?这些基金有什么区别?
QWidget
-> QAbstractButton
-> QPushButton
QWidget
文档:
如果parent是
,新的小部件将成为一个窗口。如果父级是另一个小部件,则该小部件将成为父级内的子窗口。 当其 parent 被删除时,新的小部件也会被删除。nullptr
因此,就您而言,销毁父级将会也会销毁
QPushButton
。