1
我打算從Flask調用一個刮板類,第二次實例化一個新的Webkit()類(QApplication)時,它退出了我的Flask應用程序。QtWebKit QApplication調用兩次
我該如何重新運行一個Qt GUI應用程序多次,並讓它包含所以它不關閉「外部」應用程序?
進一步說明,Qt是事件驅動和調用QApplication.quit()不僅關閉了事件循環,還關閉了Python。不調用quit(),但不會繼續執行其餘的代碼。
class Webkit():
...
def __run(self, url, method, dict=None):
self.qapp = QApplication(sys.argv) # FAIL here the 2nd time round
req = QNetworkRequest()
req.setUrl(QUrl(url))
self.qweb = QWebView()
self.qweb.setPage(self.Page())
self.qweb.loadFinished.connect(self.finished_loading)
self.qweb.load(req)
self.qapp.exec_()
def finished_loading(self):
self.qapp.quit()