Python已停止在PyQt应用程序中工作

时间:2015-03-30 08:55:43

标签: python qt pyqt pyside

代码如下。运行大约半分钟后,关闭窗口,然后" Python已停止工作"弹出对话框(你最好不止一次尝试。)  我想知道为什么会这样?对此有什么解决方案吗? 使用PyQt4-4.11.3-gpl-Py3.4-Qt4.8.6-x32.exe在Windows上测试

from PyQt4.QtCore import *
from PyQt4.QtGui import *


class MainWindow(QMainWindow):

    def __init__(self):
        super().__init__()

        self.setWindowIcon(QIcon("./wa.png"))
        self.createTrayIcon()

    def createTrayIcon(self):

        self.trayIcon = QSystemTrayIcon()
        self.trayIcon.setIcon(self.windowIcon())
        self.trayIcon.show()


if __name__ == "__main__":
    import sys
    app = QApplication(sys.argv)

    ui = MainWindow()
    ui.show()
    sys.exit(app.exec_())

1 个答案:

答案 0 :(得分:0)

我在Linux上运行PyQt工作,所以可能存在差异,但通常我会通过以下调用构建我的MainWindow:

class MainWindow(QMainWindow):
    def __init__(self, parent=None):
        super(MainWindow, self).__init__(parent)
        ...

我可以在python3中运行你的代码,但是在退出后我得到了分段错误。如果我将构造函数更改为上面指出的内容,则不会重现Fault。

希望这有帮助