I have a class that is created and needs to run a function after the event loop starts. Usually I just do: if __name__=="__main__": a = QApplication(sys.argv) m=Main(False) m.show() QTimer.singleShot(0, m.startProcessing) a.exec_() But my startProcessing slot does not get called. Ideas?