PyQt-多次打开同一页面

问题描述 投票:0回答:1

我想从我的Index.py页打开几次Form.py页。目前,当我尝试第二次打开Form时,第一个Form页面关闭。

有我的Index.py代码:

class Ui_Index(object):

  def setupUi(self, Index):
    self.Bouton_UT = QtWidgets.QToolButton(self.gridLayoutWidget)
        icon2 = QtGui.QIcon()
  icon2.addPixmap(QtGui.QPixmap(":/Logos/Logo/EC.png"),QtGui.QIcon.Normal,QtGui.Qcon.Off)
         self.Bouton_UT.setIcon(icon2)
         self.Bouton_UT.setIconSize(QtCore.QSize(120, 120))
         self.Bouton_UT.setObjectName("Bouton_UT")
         self.Bouton_UT.clicked.connect(self.openUTWindow)
         self.gridLayout.addWidget(self.Bouton_UT, 0, 1, 1, 1)

   def openUTWindow(self):
     self.window = QtWidgets.QMainWindow()
     self.report_type = "UT"
     self.ui = Ui_Form(self.report_type)
     self.ui.setupUi(self.window)
     self.window.show()

还有我的Form.py代码:

class Ui_Form(object):
    def __init__(self, report_type):
        self.report_type = report_type

    def setupUi(self, Form):
      Form.setObjectName("Form")
      Form.setFixedSize(950, 901)
      self.centralwidget = QtWidgets.QWidget(Form)
      self.centralwidget.setObjectName("centralwidget")

if __name__ == "__main__":
    import sys

    app = QtWidgets.QApplication(sys.argv)
    Form = QtWidgets.QMainWindow()
    ui = Ui_Form()
    ui.setupUi(Form)
    Form.show()
    sys.exit(app.exec_())

我检查了此answer,但我不知道如何在我的代码中使用它。

python pyqt pyqt5
1个回答
0
投票

我已经有一段时间没有做过QT了,但这是否可能是您再次实例化QtWidgets.QMainWindow的事实?那是我的第一个猜测。

© www.soinside.com 2019 - 2024. All rights reserved.