Est-il possible de créer des signaux au moment de l'exécution lorsque cela est nécessaire ?
Je fais quelque chose comme ça dans une fonction :
class WSBaseConnector(QObject)
def __init__(self) -> None:
super(QObject, self).__init__()
self._orderBookListeners: Dict[str, pyqtSignal[OrderBookData]] = {}
def registerOrderBookListener(self, market: str, listener: Callable[[OrderBookData], None], loop: AbstractEventLoop) -> None:
try:
signal = self._orderBookListeners[market]
except KeyError:
signal = pyqtSignal(OrderBookData)
signal.connect(listener)
self._orderBookListeners[market] = signal
else:
signal.connect(listener)
Comme vous pouvez le voir, j'ai un dict qui stocke les paires str, pyqtSignal. Lorsque j'essaie de connecter le signal à l'écouteur, j'obtiens l'erreur suivante :
'PyQt5.QtCore.pyqtSignal' object has no attribute 'connect'
N'est-il pas possible de créer pyqtSignals au moment de l'exécution sans les variables de la classe ?
Santé.