1
A
回答
5
一般来说,最好指定一个家长尽可能,因为它可以帮助避免对象清理问题。这是退出程序时最常见的情况,当python垃圾收集器的固有随机性可能意味着对象有时会以错误的顺序被删除,导致程序崩溃。
但是,这个问题的发现通常不会影响标准的GUI小部件,因为一旦将它们添加到布局中,Qt就会自动重新映射它们。问题越多的对象就像项目模型,项目代表,图形场景等,它们与视图紧密相关。
理想情况下,一个pyqt程序应该有一个根窗口,所有其他对象连接到父子层次结构中。当根被删除/关闭时,Qt也会递归地删除它的所有子对象。这应该只留下pyqt包装器对象,这可以安全地留给python垃圾收集器清理。
指定父母的一个更具建设性的好处是,它只是使对象更容易彼此访问。例如,一个常见的习惯用法是通过它们的父代迭代一组按钮:
for button in parent.findChildren(QAbstractButton):
print(button.text())
相关问题
- 1. PyQt的,小部件
- 2. PyQt - 调整父级窗口小部件的子窗口大小
- 3. PyQt - 如何从给定的小部件获得顶级父级?
- 4. PyQt - 在小部件顶部显示小部件
- 5. PyQt的:窗口小部件和按钮
- 6. PyQt小部件在多个文件
- 7. PyQt:删除不必要的列
- 8. pyqt:如何删除一个小部件?
- 9. 用PyQt闪烁窗口小部件
- 10. 使用PyQt动态添加和删除小部件在PyQt
- 11. PyQt每个选项卡小部件
- 12. 更新一个PyQt小部件
- 13. PyQt小部件边缘切断
- 14. 让pyqt使用可可小部件
- 15. 使用小部件整型。 PyQT与Tkinter
- 16. PyQt自定义小部件在c + +
- 17. 用户调整大小的PyQt小部件
- 18. PyQt:获取小部件在QDialog中自动调整大小
- 19. 父窗口小部件中的中心固定大小的GtkDrawingArea小部件
- 20. python pyqt和父类
- 21. pyQt - 如何使基于QGroupBox的小部件选择
- 22. 单元格中的小部件对齐pyqt
- 23. Pyqt如何获得小部件的尺寸
- 24. 在包含PySide/PyQt中的QGridLayout的小部件上绘制
- 25. 用于像素绘图的最佳PyQt/PySide小部件?
- 26. PyQt的 - 添加拖放窗口小部件
- 27. pyqt与多个qlineedit小部件的上下文菜单
- 28. pyqt - 如何从状态栏中的小部件中删除boder?
- 29. 如何捕获PyQt中Qt小部件后代的小部件中的所有鼠标事件?
- 30. PyQt - 如何添加单独的UI小部件到QMainWindow
感谢您的好评和详细的答案! –