【问题标题】:PyQt5: Variables available and modifiable by all children widgets?PyQt5:所有子小部件都可用和修改的变量?
【发布时间】:2020-06-05 16:28:07
【问题描述】:

我有电流,

QMainWindow -> QMdiArea -> QMdiSubWindow -> QTabWidget -> QWidget -> QGraphicsScene/View

现在我想在 mdi 子窗口中维护添加到场景中的某个项目的计数,现在因为可以有多个子窗口,并且每个子窗口可以有多个选项卡。如果 qt 有一个给定子小部件系统访问父类中的变量,而不是使用 self.parent().parent().... 链,我很感兴趣。

【问题讨论】:

    标签: python pyqt pyqt5


    【解决方案1】:

    您可以使用 setObjectName 设置您的 QObject 名称。然后使用对 QMainWindow 等上层对象之一的引用,您可以使用 findChild 或 findChildren 获取对某些对象的引用,并带有一些预期的名称。

    【讨论】:

    • 虽然是的,但我认为这是一个可行的选择,但是我必须在场景小部件,这与我建议的没有什么不同。
    • 除此之外,如果可以选择将对象名称存储在场景小部件中,我最好传递父 mdisubwindow 引用并存储它。
    猜你喜欢
    • 1970-01-01
    • 2020-12-14
    • 1970-01-01
    • 1970-01-01
    • 2021-12-29
    • 2017-11-30
    • 1970-01-01
    • 1970-01-01
    • 2020-07-11
    相关资源
    最近更新 更多