【发布时间】:2012-06-15 23:03:56
【问题描述】:
当我使用此代码从我的树中删除一个项目时,该项目被删除但委托继续运行:
# I do this from inside an item that has a reference to its tree-owner....
index = self.tree.indexFromItem(self)
self.tree.model().removeRow(index.row(), index.parent())
我必须参考一些参考资料才能让它正确地放弃该项目的油漆吗?
如果我清除树并重建它,它可以正常工作,但我正在尝试更直接地执行此操作。
更多细节...... 我的 GUI 用于 3D 应用程序。树项访问 3D 应用程序 API 中的节点。当 3D 应用程序中的节点被删除(尝试将我的树同步到场景)时,我正在删除该项目。我看到的是该项目已成功从树中删除,但由于我对 3D 应用程序节点的引用错误而引发错误。如果我点击,错误会一遍又一遍地重复。我不确定它是否每次都失败,或者第一个错误是否破坏了导致重复错误的 GUI,就好像它中断了清理一样。
我尝试将我的所有项目的成员/属性设置为无,但我不确定这是否真的会杀死一个引用,或者垃圾收集器何时会完成它的工作等。
【问题讨论】: