我是Qt和学习的新手。
我已经使用Qt Designer创建了两种形式。我想从第一个按钮单击事件中打开第二个表单。我已经做到了,这是行不通的。
import LoginForm
import SignUpForm
import sys
from PyQt5 import QtCore, QtGui, QtWidgets
def OnSignup():
app = QtWidgets.QApplication(sys.argv)
MainWindow = QtWidgets.QMainWindow()
ui = SignUpForm.Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
#sys.exit(app.exec_())
app = QtWidgets.QApplication(sys.argv)
MainWindow = QtWidgets.QMainWindow()
ui = LoginForm.Ui_LoginForm()
ui.setupUi(MainWindow)
ui.Signup.clicked.connect(OnSignup)
MainWindow.show()
sys.exit(app.exec_())
sys.exit(app.exec _())
没有此行,则打开第一个表单,但单击该按钮时未显示第二个表单。
在此行中,生成此错误。 QCoreApplication :: exec:事件循环已在运行
Plz帮助
答案 0 :(得分:1)
import LoginForm
import SignUpForm
import sys
from PyQt5 import QtCore, QtGui, QtWidgets
window2 = None
def OnSignup():
global window2
if window2 is None:
window2 = QtWidgets.QMainWindow()
ui = SignUpForm.Ui_MainWindow()
ui.setupUi(window2)
window2.show()
app = QtWidgets.QApplication(sys.argv)
MainWindow = QtWidgets.QMainWindow()
ui = LoginForm.Ui_LoginForm()
ui.setupUi(MainWindow)
ui.Signup.clicked.connect(OnSignup)
MainWindow.show()
app.exec_()