我使用的是pyQT 4.11,我遇到了严重的问题。 我在一个模块中有以下代码,从另一个窗口调用OpenFileDialog:
try:
app=QtGui.QApplication(sys.argv)
print "OFD app-try"
except:
app=QtGui.QApplication.activeModalWidget()
print"OFD app-try failed. App is:"
print app
Form = QtGui.QWidget()
self.setupUi(Form)
Form.show()
sys.exit(app.exec_())
在MainWindow类中,我运行以下行
self.setModal(True)
dg=OpenFileDialog.Ui_Form(item,self)
当我在MainWindow类的开头运行相同的检查时,
<PySide.QtGui.QApplication object at 0x03EB1490>
是打印的,所以我确实有一个QApplication。
我创建了构造函数以要求一个项目和调用者。
唯一的问题是它打印“OFD app-try失败。应用程序是:
没有“所以我的GUI被搞砸了,所以布局是”“。错误看起来像这样:
sys.exit(app.exec_()) AttributeError: 'NoneType' object has no attribute 'exec_'
要触发except块,因为已经有QApplication实例在运行,并且在raise
d时反映出来。从主窗口调用此窗口。
造成这种情况的原因是什么?如何解决?