清除pyqt中布局中的所有小部件

法尔马里:

有没有办法清除(删除)布局中的所有小部件?

self.plot_layout = QtGui.QGridLayout()
self.plot_layout.setGeometry(QtCore.QRect(200,200,200,200))
self.root_layout.addLayout(self.plot_layout)
self.plot_layout.addWidget(MyWidget())

现在,我想plot_layout用新的小部件替换小部件。有一种简单的方法可以清除其中的所有小部件plot_layout吗?我看不到任何这样的方法。

帖子:

经过大量研究(此过程花了很长时间,因此我将其添加到此处以供将来参考),这是我发现真正清除和删除布局中的小部件的方法:

for i in reversed(range(layout.count())): 
    layout.itemAt(i).widget().setParent(None)

关于QWidget的文档说的是:

删除其父项时,将删除新的窗口小部件。

重要说明:您需要向后循环,因为从一开始删除内容会更改项目并更改布局中项目的顺序。

要测试并确认布局为空:

for i in range(layout.count()): print i

似乎还有另一种方法。代替使用setParent函数,可以使用deleteLater()函数,如下所示:

for i in reversed(range(layout.count())): 
    layout.itemAt(i).widget().deleteLater()

该文档说QObject.deleteLater(个体经营)

计划删除该对象。

但是,如果运行上面指定的测试代码,它将打印一些值。这表明与setParent的代码相反,布局仍然具有项目

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Java

遍历活动中的所有“小部件” /元素

来自分类Dev

PyQt-减少小部件* expands *布局中的边距和间距

来自分类Dev

PyQt:QScrollArea中的小部件的环绕式布局

来自分类Dev

在PyQt中删除小部件和布局

来自分类Dev

PyQt中的动态小部件添加

来自分类Dev

小部件在相对布局中彼此相邻

来自分类Dev

如何在PyQt5中删除QGroupBox中的所有小部件?

来自分类Dev

使用堆栈中拖动的小部件更新所有附加的小部件

来自分类Dev

布局中的PyQt5 QTreeWidget显示了小部件外部的一列

来自分类Dev

如何在PyQt5的标签小部件中添加堆叠式布局?

来自分类Dev

列布局中的底部小部件溢出?

来自分类Dev

覆盖pyqt中现有小部件的绘画事件

来自分类Dev

我想删除所有小部件并将新的小部件放在tkinter中

来自分类Dev

gtk中是否有专门的堆叠式小部件布局?

来自分类Dev

无法使用NotificationListenerService取消小部件中的所有通知

来自分类Dev

在pyqt中清除QWidget上的布局

来自分类Dev

多个布局中的表单小部件“ id”

来自分类Dev

在xml布局中添加小部件

来自分类Dev

Qt小部件在布局中重叠

来自分类Dev

iOS小部件中的smartface更新和清除按钮消失了

来自分类Dev

QStackedWidget中的小部件共享的布局

来自分类Dev

在 PyQt 中禁用 matplotlib 小部件

来自分类Dev

如何将行编辑中的所有输入文本显示到pyqt4中的文本编辑小部件

来自分类Dev

删除、清除或更新 Kivy 中以编程方式定义的小部件

来自分类Dev

Pyqt 在不同的布局中添加相同的小部件对象

来自分类Dev

如何使用 PyQt5 中垂直布局的 QScrollArea 使小部件堆叠在一起?

来自分类Dev

为什么 Card 小部件没有将所有项目都包裹在 Wrap 小部件中?

来自分类Dev

如何在 PyQt5 布局中更紧密地对齐两个小部件?

来自分类Dev

我可以在布局中包含的小部件中有选项卡控件吗?

Related 相关文章

  1. 1

    遍历活动中的所有“小部件” /元素

  2. 2

    PyQt-减少小部件* expands *布局中的边距和间距

  3. 3

    PyQt:QScrollArea中的小部件的环绕式布局

  4. 4

    在PyQt中删除小部件和布局

  5. 5

    PyQt中的动态小部件添加

  6. 6

    小部件在相对布局中彼此相邻

  7. 7

    如何在PyQt5中删除QGroupBox中的所有小部件?

  8. 8

    使用堆栈中拖动的小部件更新所有附加的小部件

  9. 9

    布局中的PyQt5 QTreeWidget显示了小部件外部的一列

  10. 10

    如何在PyQt5的标签小部件中添加堆叠式布局?

  11. 11

    列布局中的底部小部件溢出?

  12. 12

    覆盖pyqt中现有小部件的绘画事件

  13. 13

    我想删除所有小部件并将新的小部件放在tkinter中

  14. 14

    gtk中是否有专门的堆叠式小部件布局?

  15. 15

    无法使用NotificationListenerService取消小部件中的所有通知

  16. 16

    在pyqt中清除QWidget上的布局

  17. 17

    多个布局中的表单小部件“ id”

  18. 18

    在xml布局中添加小部件

  19. 19

    Qt小部件在布局中重叠

  20. 20

    iOS小部件中的smartface更新和清除按钮消失了

  21. 21

    QStackedWidget中的小部件共享的布局

  22. 22

    在 PyQt 中禁用 matplotlib 小部件

  23. 23

    如何将行编辑中的所有输入文本显示到pyqt4中的文本编辑小部件

  24. 24

    删除、清除或更新 Kivy 中以编程方式定义的小部件

  25. 25

    Pyqt 在不同的布局中添加相同的小部件对象

  26. 26

    如何使用 PyQt5 中垂直布局的 QScrollArea 使小部件堆叠在一起?

  27. 27

    为什么 Card 小部件没有将所有项目都包裹在 Wrap 小部件中?

  28. 28

    如何在 PyQt5 布局中更紧密地对齐两个小部件?

  29. 29

    我可以在布局中包含的小部件中有选项卡控件吗?

热门标签

归档