self.exit和self.quit不退出PyQt应用程序

时间:2011-10-11 15:07:16

标签: python pyqt pyqt4

我正在尝试编写一个呈现HTML,等待和完成的PyQt应用程序。我的渲染效果大部分下降(但为了简单起见,这里为了简化而删除)。这里的代码运行并挂起,好像self.exit调用(或self.quit)没有被尊重。没有Qt的经验,我觉得好像缺少了一些明显的东西。有人可以对此有所了解吗?

我也尝试将退出调用放在渲染函数的末尾。

from PyQt4.Qt import QApplication
from PyQt4.QtWebKit import QWebView
import sys

class ScreenshotterApplication(QApplication):

    def __init__(self, args, html):
        QApplication.__init__(self, args)

        self.browser = QWebView()
        self.render(html)
        self.exit()

    def render(self, html):
        print html

if __name__ == "__main__":
    app = ScreenshotterApplication(sys.argv, '<h1>Hello, World!</h1>')
    sys.exit(app.exec_())

1 个答案:

答案 0 :(得分:3)

我真的不明白你想要做什么,但是,那就是你在exit的构造函数中调用quit(或QApplication)。 exit(或quit)告诉QApplication离开其事件循环,但在构造函数中,eventloop尚未启动(调用exec_一次)。