PyQt Widget connect() and disconnect()
If you need to reconnect signals in many places, then you could define a generic utility function like this: def reconnect(signal, newhandler=None, oldhandler=None): try: if oldhandler is not None: while True: signal.disconnect(oldhandler) else: signal.disconnect() except TypeError: pass if newhandler is not None: signal.connect(newhandler) … if connected: reconnect(myButton.clicked, function_A) else: reconnect(myButton.clicked, function_B) (NB: the loop is … Read more