Problem Verbindungs
Ich habe eine Klasse mit einem Signal, das während der Initialisierungpyside zu Signal direkt nach der Initialisierung
from PySide.QtCore import *
class Example(QObject):
signal = Signal()
def __init__(self):
super().__init__()
self.signal.emit()
jetzt emittiert wird i auf das Signal anschließen möchten:
example = Example()
example.signal.connect(lambda: print('signal emitted'))
Bei dieser Vorgehensweise wird das Signal nicht erkannt, da die Verbindung hergestellt wird, nachdem das Signal bereits ausgegeben wurde
Lösung?
meine einzige Idee, um das Signal zu fangen ist eine zweite init-Methode für die Klasse wie folgt zu erstellen:
from PySide.QtCore import *
class Example(QObject):
signal = Signal()
def __init__(self):
super().__init__()
def second_init(self):
self.signal.emit()
und verbindet auf diese Weise:
example = Example()
example.signal.connect(lambda: print('signal emitted'))
example.second_init()
Fragen
Ist Gibt es eine Möglichkeit, sich sofort mit dem Signal des Beispielobjekts zu verbinden, ohne die init-Methode aufteilen zu müssen?
Wenn das nicht möglich ist: Ist die Art, wie ich den Weg vorgeschlagen habe oder gibt es einen besseren Weg?