我想每按一个按钮,就弹出一个窗口。怎么做到这个功能
我知道怎样点击一个按钮弹出一个子窗口:代码如下
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)
所以,实现这个功能该怎么做。