当我关闭窗口时,PyQt应用程序不会退出

时间:2014-08-20 18:49:46

标签: python pyqt pyside spyder

每当我执行代码并关闭窗口时,它都会关闭,但是IDE中的python控制台没有返回退出代码,当我再次尝试运行它时,我得到一个警告对话框,上面写着< / p>

No python console is selected to run main.py

所以我必须关闭IDE python控制台,然后打开一个新的控制台,然后在新的python控制台中运行程序

我在Windows上使用spyder IDE 64位

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

if __name__ == "__main__":
    app = QApplication(sys.argv)
    win = QMainWindow()       
    win.show()
    sys.exit(app.exec_())

1 个答案:

答案 0 :(得分:5)

如果你在running(i)python控制台中执行代码,你不需要以通常的方式启动qapplication,这两行

win = QMainWindow()       
win.show()

足以让你跑步。这是因为控制台已经为您准备了(线程)qapplication。

当没有控制台具有焦点时可能会导致错误消息(即,您可能因为sys.exit()而退出,或者您点击了等等)。您只需在(i)python控制台中单击以使其“选中”,然后运行按钮应该再次工作。