那位兄弟帮帮忙,我的要求是点击开始运行b2子程序,点击关闭结束所有。
运行结果是先运行b2子程序,运行结束后点击开始没反应,点击关闭一切正常。
import sys
from PyQt6.QtWidgets import QApplication, QWidget, QPushButton, QMessageBox
import b2
class Widget(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
# 创建开始按钮
start_btn = QPushButton('开始', self)
# 将开始按钮的clicked信号连接到b2函数
start_btn.clicked.connect(self.b2)
# 指定开始按钮的位置
start_btn.move(50, 50)
# 创建关闭按钮
close_btn = QPushButton('关闭', self)
# 将关闭按钮的clicked信号连接到窗口的close方法
close_btn.clicked.connect(self.close)
# 指定关闭按钮的位置
close_btn.move(130, 50)
# 设定窗口的位置和大小
self.setGeometry(300, 300, 320, 160)
self.setWindowTitle('战争雷霆')
# 显示窗口
self.show()
def b2(self):
# 点击开始按钮时调用b2函数
b2.main()
def main():
# 创建应用程序对象
app = QApplication(sys.argv)
# 创建窗口对象
ex = Widget()
# 显示窗口
ex.show()
# 进入应用程序的主循环
sys.exit(app.exec())
if __name__ == '__main__':
main()