我刚开始使用PyQt5,非常感谢您的帮助。我有一个小部件W,它响应来自某个C类的所有对象的信息。小部件W只能由C类的对象更新,在更新过程中,它必须知道是哪个特定对象触发了它
问题是C类对象可能会在整个程序过程中继续创建。是否可以将信号/插槽范例应用于此问题
到目前为止,我的想法是:
- 理想情况下,我会将W上的插槽连接到C上的类变量。然而,Qt不允许信号作为类变量李>
- 我可以使用集合对象CO,这样任何新对象C都必须通过该对象的接口创建。然后我在这个物体上定义了一个信号,它将连接到W上的一个插槽。然而,这很难看,因为CO的存在只是为了解决这个问题李>
- 我可以将signal/slot范例放在一起,而只需将W的回调(slot)添加到C上的类变量中。然后,每当创建新对象C时,它就已经有了对回调的引用李>
Tags:
一种可能的解决方案是使用元类:
相关问题 更多 >
编程相关推荐