我有一個具有GUI界面和命令行界面的軟件。它應該做的是檢測它是否在qtconsole中運行。如果是,它不會創建一個新的QApplication並以非阻塞的方式顯示GUI。腳本存在後,將會有一個cmd對象,用戶可以在較低級別與事物進行交互。Python Qtconsole:QApp = QCoreApplication.instance()在Linux上返回None,在Windows上返回一個有效的QApplication
from PyQt4.QtCore import QCoreApplication
from PyQt4.Qt import QApplication
import sys
QApp = QCoreApplication.instance()
new_qapp_bit = False
if QApp == None:
print 'running without the qt console'
new_qapp_bit = True
QApp = QApplication(sys.argv)
else:
print 'found the qt console'
cmd = MyCMDInterface(use_gui=True)
if new_qapp_bit
sys.exit(QApp.exec_())
在Windows上完美的作品,QCoreApplication.instance()返回一個有效的QApplication按計劃一切順利,但在Linux和Mac返回None。我一直在黑客攻擊,我沒有看到任何答案。
我從IPython qtconsole應用程序運行它,但我修正了錯誤。 – Erotemic