0

我正在尝试了解信号和插槽....

读了几件事

http://www.harshj.com/2010/05/06/pyqt-faq-custom-signals-jpeg-mouse-hovers-and-more/#custom

http://zetcode.com/tutorials/pyqt4/eventsandsignals/

这是问题:

class bla(object):
    blaSignal = QtCore.pyqtSignal()

有效,但

bla 类(对象):

def __init__(self):
    self.blaSignal = QtCore.pyqtSignal()

不起作用,它说明了信号没有被绑定......我在这里不明白什么?为什么一个工作?

谢谢

4

1 回答 1

2

这里的问题是您希望有一个由所有bla对象共享的单一信号。

如果每个 都有不同的信号,那么在不知道拥有特定信号的特定实例的情况bla下,没有人能够连接任何信号。bla这在程序中已经够糟糕的了,但想象一下类似QtDesignerQMetaObject基于 - 的内省将如何处理它。即使它创建了一个bla实例,它也不会是bla您的代码在运行时创建的同一个实例。

这在文档中定义新信号pyqtSignal()中有所解释。

于 2013-04-01T22:09:33.047 回答