QTreeWidget的removeItemWidget函数问题

时间:2021-04-02 18:49:55
用这个函数删除的item怎么还显示?百度了下说加个delete,
removeItemWidget(item);
delete(item);

delete(item);效果一样的,那removeItemWidget()有什么用呢?

1 个解决方案

#1


具体原因最好去看一些官方源码
这要谈到QT的哲学
Qt的所有组件都坚守一个观点:任何Qt对象都应当可以动态生成动态销毁。
那就意味着我们必须完全销毁一个组件他才会消失
removeItemWidget(item);只是销毁了指向他的指针,界面上还存在
所以需要delete释放
QT确实是个很完美的框架

#1


具体原因最好去看一些官方源码
这要谈到QT的哲学
Qt的所有组件都坚守一个观点:任何Qt对象都应当可以动态生成动态销毁。
那就意味着我们必须完全销毁一个组件他才会消失
removeItemWidget(item);只是销毁了指向他的指针,界面上还存在
所以需要delete释放
QT确实是个很完美的框架