import sys from PySide import QtGui, QtScript from PySide.QtCore import QTimer, SIGNAL import qt4reactor app = QtGui.QApplication(sys.argv) qt4reactor.install() from twisted.internet import reactor, task from twisted.python import log log.startLogging(sys.stdout) def testReactor(): print 'tick...' def buttonClick(): print 'click...' reactor.iterate(5.0) print 'click return' engine = QtScript.QScriptEngine() button = QtGui.QPushButton() scriptButton = engine.newQObject(button) engine.globalObject().setProperty("button", scriptButton) app.connect(button, SIGNAL("clicked()"), buttonClick) engine.evaluate("button.text = 'Hello World!'") engine.evaluate("button.styleSheet = 'font-style: italic'") engine.evaluate("button.show()") task.LoopingCall(testReactor).start(1.0) reactor.run() log.msg('fell off the bottom?...')