3

这是对 为什么应用程序会在 sys.exit 命令之后显示的后续内容?

我正在关注本教程:

http://zetcode.com/tutorials/pyqt4/firstprograms/

我稍微修改了代码来测试一下

import sys
from PyQt4 import QtGui


if __name__ == "__main__":
    app = QtGui.QApplication(sys.argv)
    w = QtGui.QWidget()
    w.resize(250,150)
    w.move(300,300)
    w.setWindowTitle("Title")
    w.show()
    sys.exit(app.exec_())

我对为什么没有参考感到困惑,appw希望有某种迹象表明它w是一个孩子或什么的app

我在 Spyder 和一个 IPython 解释器中运行它。

4

1 回答 1

2

对于任何使用 Qt 的 GUI 应用程序,只有一个 QApplication 对象,无论应用程序在任何给定时间是否有 0、1、2 或更多窗口。所有窗口都由应用程序自动管理。

您确实必须对其进行初始化并掌握exec它。

您必须在任何其他 GUI 对象之前创建应用程序(因为它们由它管理)。

QApplication对象的详细描述

于 2013-03-28T18:20:28.460 回答