这是必须调用UI类的类:
class mainpanelManager(QtGui.QGuiApplication, Ui_MainWindow):
def __init__(self):
QtGui.QGuiApplication.__init__(self)
Ui_MainWindow.__init__(self)
self.setupUi(self)
if __name__ == "__main__":
app = QtGui.QGuiApplication(sys.argv)
window = mainpanelManager()
window.show()
sys.exit(app.exec_())
这是UI类(由QtCreator和Qt5.7生成):
^{pr2}$当我运行class mainpanelManager
时,我得到以下错误:
QtGui.QGuiApplication.__init__(self)
TypeError: QGuiApplication(List[str]): not enough arguments
请给我一些建议如何从另一个类运行UI类。
我做错什么了??我发现的样本使用的是import PyQt4 import QtCore, QtGui, QtWidgets
,但在我的例子中(使用Qt5),没有QApplication
选项,就像Qt4
。似乎Qt5
使用了QtGui.QGuiApplication
。我不明白。欢迎任何帮助。请详细解释。我对Python还是个新手。在
您需要一个与Qt Designer的顶层对象相匹配的子类,在本例中,它似乎是一个
QMainWindow
:您应该使用
^{pr2}$QApplication
:附言:
PyQt4与PyQt5不兼容。请参见:Differences Between PyQt4 and PyQt5。在
PPS:
看起来您还试图编辑pyuic生成的模块。千万不要那样做。我建议你重新运行pyuic,这样你就能得到一个干净的模块。在
相关问题 更多 >
编程相关推荐