为什么app和widget之间没有引用?

时间:2013-03-28 18:18:20

标签: python pyqt pyqt4 ipython

这是一个跟进 why will the application show after sys.exit command?

我正在学习本教程:

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 1}}。

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

1 个答案:

答案 0 :(得分:2)

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

你必须对它进行初始化,然后把它保持到exec

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

Detailed Description of the QApplication object