PyQt5 如何创建多个窗口 python

img


我想每按一个按钮,就弹出一个窗口。怎么做到这个功能
我知道怎样点击一个按钮弹出一个子窗口:代码如下

img


class FirstUI(QWidget):

def __init__(self):
    super(FirstUI, self).__init__()
    self.resize(500, 300)  #设置大小
    self.setWindowTitle("Spider 爬虫 1.1 版本")       #设置窗口名字
    self.changeP = QtWidgets.QPushButton(self)         #增加一个按钮
    self.changeP.setGeometry(QtCore.QRect(100, 10, 300, 50))              #设置按钮
    self.changeP.setText("第一步:爬取网站的URL,传入网址")                 #按钮的名字
    self.changeP.clicked.connect(self.open_second_ui)
    self.changeP1 = QtWidgets.QPushButton(self)  # 增加一个按钮
    self.changeP1.setGeometry(QtCore.QRect(100, 80, 300, 50))  # 设置按钮
    self.changeP1.setText("第二步:爬取网站的URL,传入TXT文件")  # 按钮的名字
    self.changeP1.clicked.connect(self.open_three_ui)
    self.changeP2 = QtWidgets.QPushButton(self)  # 增加一个按钮
    self.changeP2.setGeometry(QtCore.QRect(100, 150, 300, 50))  # 设置按钮
    self.changeP2.setText("第三步:输入两个TXT文件去重后合并")  # 按钮的名字
    self.changeP2.clicked.connect(self.open_second_ui)
    self.changeP2 = QtWidgets.QPushButton(self)  # 增加一个按钮
    self.changeP2.setGeometry(QtCore.QRect(100, 220, 300, 50))  # 设置按钮
    self.changeP2.setText("第四步:输入TXT文件,开始爬取文章")  # 按钮的名字
    self.changeP2.clicked.connect(self.open_second_ui)

def open_second_ui(self):
    # self.second_ui = SecondUI()                 #定位到第二个窗口
    # self.second_ui.show()                       #打开第二个窗口
    print(33)
def open_three_ui(self):
    self.three_ui = ThreeUI()  # 定位到第三个窗口
    self.three_ui.show()

但是,这个方法没有办法打开三个窗口,只能打开两个如果你按第二个按键软件会直接退出。结果如下:
C:\Users\Win10\AppData\Local\Programs\Python\Python39\python.exe "C:/Users/Win10/PycharmProjects/untitled5/Spider 爬虫 1.1版本.py"

进程已结束,退出代码为 -1073740791 (0xC0000409)
所以,实现这个功能该怎么做。

def open_second_ui(self):
下面没有被注释掉

你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答


本次提问扣除的有问必答次数,已经为您补发到账户,我们后续会持续优化,扩大我们的服务范围,为您带来更好地服务。