函数
我们知道,指定了parent的窗口对象不需要再手动释放内存,但有时我们又希望在child窗口被关闭(实则隐藏)时,就释放掉窗口内存,而不是隐藏它。对child窗口进行setAttribute(Qt::WA_DeleteOnClose, true)设置后就可以满足以上要求,函数原型如下:
- void QWidget::setAttribute(Qt::WidgetAttribute attribute, bool on = true)
释义
- 枚举Qt::WidgetAttribute用于设置小部件各种属性,其中WA_DeleteOnClose枚举项表示当小部件接收到关闭事件时,就销毁它而不是隐藏它。
注意:小部件被销毁时其parent的children列表中也会自动清除掉该小部件对应的指针,因此不会引起parent重复释放的问题。