运行从qt creator导出并使用pyqt5转换为python的python代码

运行从qt creator导出并使用pyqt5转换为python的python代码,qt,python-3.x,qt-creator,pyqt5,Qt,Python 3.x,Qt Creator,Pyqt5,我最近在尝试运行python脚本后遇到了这个错误。简言之,我根本不明白我是如何提出三个论点的。我已经包括了我认为最相关的代码片段。非常感谢你的帮助。多谢各位 回溯(最近一次呼叫最后一次): 文件“DESeq_rpkm_gui.py”,第946行,在 disp=Ui\u主窗口() 文件“DESeq_rpkm_gui.py”,第21行,在init self.setupUi(self,QMainWindow) TypeError:setupUi()正好接受2个参数(给定3个) 及 当您将方法调用为ob

我最近在尝试运行python脚本后遇到了这个错误。简言之,我根本不明白我是如何提出三个论点的。我已经包括了我认为最相关的代码片段。非常感谢你的帮助。多谢各位

回溯(最近一次呼叫最后一次): 文件“DESeq_rpkm_gui.py”,第946行,在 disp=Ui\u主窗口() 文件“DESeq_rpkm_gui.py”,第21行,在init self.setupUi(self,QMainWindow) TypeError:setupUi()正好接受2个参数(给定3个)


当您将方法调用为
object.method(argument1,…)
时,将
object
作为第一个参数隐式传递给该方法

因此,在当前代码中,
self.setupUi(self,QMainWindow)
行实际上向方法
setupUi
传递了三个参数。它们是
self
self
(再次)和
QMainWindow

您可能需要阅读以下内容:

现在,您可能对此感到困惑,因为PyQt在调用/使用
setupUi
方法方面有点不正常。本文档仅供参考,但简而言之,他们希望您调用
self.setupUi(self)

这样,您就可以使用
setupUi
方法在传入的任何小部件(甚至不止一个)中创建UI。这在文档的第一个示例中进行了解释:

import sys
from PyQt4.QtGui import QApplication, QDialog
from ui_imagedialog import Ui_ImageDialog

app = QApplication(sys.argv)
window = QDialog()
ui = Ui_ImageDialog()
ui.setupUi(window)

window.show()
sys.exit(app.exec_())

您使用的是我认为的更传统的方法,并在您的<代码>中引用了<代码> StuuPUI <代码> >代码> >代码>方法。这在他们文档中的第二个示例中进行了介绍,正如我在上面概述的那样,应该称之为

            if __name__=='__main__':
                app = QApplication(sys.argv)
                disp = Ui_MainWindow()
                disp.show()
                sys.exit(disp.exec_()) 
import sys
from PyQt4.QtGui import QApplication, QDialog
from ui_imagedialog import Ui_ImageDialog

app = QApplication(sys.argv)
window = QDialog()
ui = Ui_ImageDialog()
ui.setupUi(window)

window.show()
sys.exit(app.exec_())