【发布时间】:2013-10-20 03:51:52
【问题描述】:
我最近一直在研究 iPython 的 Enthought 发行版。今天我决定看看我是否可以让一些 Qt GUI progs 运行,并在做了一些小改动后成功了。简单例子:
import sys
from PySide import QtGui # was 'from PyQT4 import QtGui'
# app = QtGui.QApplication(sys.argv) -- not needed
win = QtGui.QWidget()
win.resize(320, 240)
win.setWindowTitle("Hello MIT 6X!")
win.show()
sys.exit() # was 'sys.exit(app.exec_())'
但在某些情况下,我希望能够通过sys.argv。我看到的大多数示例代码都是上面注释掉的'app = ' 行的形式。如果我包含它,我会得到 p>
'RuntimeError: A QApplication 实例已经存在。'
对传递参数的建议表示赞赏。
【问题讨论】:
-
您是否正在尝试从 in IPython 终端运行 Qt 程序?如果是这样,命令行参数对您的程序有何意义?
-
是的 - 谢谢。在过去 3 个小时的大部分时间里查看文档后,我得出了这个结论,在阅读了您的评论后,在 Enthought 也设置的 IDLE shell 中尝试了它,它似乎可以从那里做我想做的事情。我只需要记住在学习 Qt 时使用 IDLE 而不是 Canopy 代码编辑器。
-
你也可以只从命令行运行:
python my_file.py这样你用什么编写代码都没有关系(任何文本编辑器、IDLE 等)