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それはプログラム内では十分に悪いことですが、 のようなものQtDesignerや にQMetaObject基づくイントロスペクションがそれをどのように処理するか想像してみてください。インスタンスが作成されたとしても、それはコードが実行時に作成したインスタンスblaと同じではありません。bla

これは、ドキュメントの新しいシグナルの定義pyqtSignal()で多少説明されています。

于 2013-04-01T22:09:33.047 に答える