python - 注册表单窗口未正确显示
问题描述
我是pyqt5的新手。我使用 qt 设计器制作了两个窗口,并使用 pyuic 将它们转换为 python 代码。当我单击它时,我还连接了注册按钮以显示注册表单窗口。但是现在当我运行程序并单击注册按钮时,只有提交按钮显示在注册窗口中,其余部分完全为空。
这是带有主窗口的文件
from PyQt5 import QtCore, QtGui, QtWidgets
from regform import Ui_cnum
class Ui_Form(object):
def add(self):
self.window = QtWidgets.QMainWindow()
self.ui= Ui_cnum()
self.ui.setupUi(self.window)
self.window.show()
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(187, 167)
self.verticalLayout = QtWidgets.QVBoxLayout(Form)
self.verticalLayout.setObjectName("verticalLayout")
self.horizontalLayout = QtWidgets.QHBoxLayout()
self.horizontalLayout.setObjectName("horizontalLayout")
spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout.addItem(spacerItem)
self.register_2 = QtWidgets.QPushButton(Form)
self.register_2.setObjectName("register_2")
self.register_2.clicked.connect(self.add)
self.horizontalLayout.addWidget(self.register_2)
spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout.addItem(spacerItem1)
self.verticalLayout.addLayout(self.horizontalLayout)
self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_2.addItem(spacerItem2)
self.update = QtWidgets.QPushButton(Form)
self.update.setObjectName("update")
self.horizontalLayout_2.addWidget(self.update)
spacerItem3 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_2.addItem(spacerItem3)
self.verticalLayout.addLayout(self.horizontalLayout_2)
self.horizontalLayout_3 = QtWidgets.QHBoxLayout()
self.horizontalLayout_3.setObjectName("horizontalLayout_3")
spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_3.addItem(spacerItem4)
self.remove = QtWidgets.QPushButton(Form)
self.remove.setObjectName("remove")
self.horizontalLayout_3.addWidget(self.remove)
spacerItem5 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_3.addItem(spacerItem5)
self.verticalLayout.addLayout(self.horizontalLayout_3)
self.horizontalLayout_4 = QtWidgets.QHBoxLayout()
self.horizontalLayout_4.setObjectName("horizontalLayout_4")
spacerItem6 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_4.addItem(spacerItem6)
self.list = QtWidgets.QPushButton(Form)
self.list.setObjectName("list")
self.horizontalLayout_4.addWidget(self.list)
spacerItem7 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_4.addItem(spacerItem7)
self.verticalLayout.addLayout(self.horizontalLayout_4)
self.horizontalLayout_5 = QtWidgets.QHBoxLayout()
self.horizontalLayout_5.setObjectName("horizontalLayout_5")
spacerItem8 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_5.addItem(spacerItem8)
self.verify = QtWidgets.QPushButton(Form)
self.verify.setObjectName("verify")
self.horizontalLayout_5.addWidget(self.verify)
spacerItem9 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_5.addItem(spacerItem9)
self.verticalLayout.addLayout(self.horizontalLayout_5)
self.retranslateUi(Form)
QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
_translate = QtCore.QCoreApplication.translate
Form.setWindowTitle(_translate("Form", "User Menu"))
self.register_2.setText(_translate("Form", "Register"))
self.update.setText(_translate("Form", "Update"))
self.remove.setText(_translate("Form", "Remove"))
self.list.setText(_translate("Form", "List"))
self.verify.setText(_translate("Form", "Verify"))
if __name__ == "__main__":
import sys
app = QtWidgets.QApplication(sys.argv)
Form = QtWidgets.QWidget()
ui = Ui_Form()
ui.setupUi(Form)
Form.show()
sys.exit(app.exec_())
这是带有注册表单窗口的文件
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_cnum(object):
def setupUi(self, cnum):
cnum.setObjectName("cnum")
cnum.resize(400, 300)
self.verticalLayout = QtWidgets.QVBoxLayout(cnum)
self.verticalLayout.setObjectName("verticalLayout")
self.horizontalLayout = QtWidgets.QHBoxLayout()
self.horizontalLayout.setObjectName("horizontalLayout")
self.label = QtWidgets.QLabel(cnum)
self.label.setObjectName("label")
self.horizontalLayout.addWidget(self.label)
spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout.addItem(spacerItem)
self.fname = QtWidgets.QLineEdit(cnum)
self.fname.setObjectName("fname")
self.horizontalLayout.addWidget(self.fname)
self.verticalLayout.addLayout(self.horizontalLayout)
self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
self.label_2 = QtWidgets.QLabel(cnum)
self.label_2.setObjectName("label_2")
self.horizontalLayout_2.addWidget(self.label_2)
spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_2.addItem(spacerItem1)
self.lname = QtWidgets.QLineEdit(cnum)
self.lname.setObjectName("lname")
self.horizontalLayout_2.addWidget(self.lname)
self.verticalLayout.addLayout(self.horizontalLayout_2)
self.horizontalLayout_3 = QtWidgets.QHBoxLayout()
self.horizontalLayout_3.setObjectName("horizontalLayout_3")
self.label_3 = QtWidgets.QLabel(cnum)
self.label_3.setObjectName("label_3")
self.horizontalLayout_3.addWidget(self.label_3)
spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_3.addItem(spacerItem2)
self.cnic = QtWidgets.QLineEdit(cnum)
self.cnic.setObjectName("cnic")
self.horizontalLayout_3.addWidget(self.cnic)
self.verticalLayout.addLayout(self.horizontalLayout_3)
self.horizontalLayout_4 = QtWidgets.QHBoxLayout()
self.horizontalLayout_4.setObjectName("horizontalLayout_4")
self.label_4 = QtWidgets.QLabel(cnum)
self.label_4.setObjectName("label_4")
self.horizontalLayout_4.addWidget(self.label_4)
spacerItem3 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_4.addItem(spacerItem3)
self.regno = QtWidgets.QLineEdit(cnum)
self.regno.setObjectName("regno")
self.horizontalLayout_4.addWidget(self.regno)
self.verticalLayout.addLayout(self.horizontalLayout_4)
self.horizontalLayout_5 = QtWidgets.QHBoxLayout()
self.horizontalLayout_5.setObjectName("horizontalLayout_5")
self.label_5 = QtWidgets.QLabel(cnum)
self.label_5.setObjectName("label_5")
self.horizontalLayout_5.addWidget(self.label_5)
spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_5.addItem(spacerItem4)
self.eno = QtWidgets.QLineEdit(cnum)
self.eno.setObjectName("eno")
self.horizontalLayout_5.addWidget(self.eno)
self.verticalLayout.addLayout(self.horizontalLayout_5)
self.horizontalLayout_6 = QtWidgets.QHBoxLayout()
self.horizontalLayout_6.setObjectName("horizontalLayout_6")
self.label_6 = QtWidgets.QLabel(cnum)
self.label_6.setObjectName("label_6")
self.horizontalLayout_6.addWidget(self.label_6)
spacerItem5 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_6.addItem(spacerItem5)
self.cno = QtWidgets.QLineEdit(cnum)
self.cno.setObjectName("cno")
self.horizontalLayout_6.addWidget(self.cno)
self.verticalLayout.addLayout(self.horizontalLayout_6)
self.horizontalLayout_7 = QtWidgets.QHBoxLayout()
self.horizontalLayout_7.setObjectName("horizontalLayout_7")
self.label_7 = QtWidgets.QLabel(cnum)
self.label_7.setObjectName("label_7")
self.horizontalLayout_7.addWidget(self.label_7)
spacerItem6 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_7.addItem(spacerItem6)
self.papa = QtWidgets.QLineEdit(cnum)
self.papa.setObjectName("papa")
self.horizontalLayout_7.addWidget(self.papa)
self.verticalLayout.addLayout(self.horizontalLayout_7)
self.horizontalLayout_8 = QtWidgets.QHBoxLayout()
self.horizontalLayout_8.setObjectName("horizontalLayout_8")
spacerItem7 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_8.addItem(spacerItem7)
self.submit = QtWidgets.QPushButton(cnum)
self.submit.setObjectName("submit")
self.horizontalLayout_8.addWidget(self.submit)
spacerItem8 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_8.addItem(spacerItem8)
self.verticalLayout.addLayout(self.horizontalLayout_8)
self.retranslateUi(cnum)
QtCore.QMetaObject.connectSlotsByName(cnum)
def retranslateUi(self, cnum):
_translate = QtCore.QCoreApplication.translate
cnum.setWindowTitle(_translate("cnum", "Registration Form"))
self.label.setText(_translate("cnum", "First Name"))
self.label_2.setText(_translate("cnum", "Last Name"))
self.label_3.setText(_translate("cnum", "CNIC"))
self.label_4.setText(_translate("cnum", "Registration Number"))
self.label_5.setText(_translate("cnum", "Engine Number"))
self.label_6.setText(_translate("cnum", "Chassis Number"))
self.label_7.setText(_translate("cnum", "Father\'s Name"))
self.submit.setText(_translate("cnum", "Submit"))
if __name__ == "__main__":
import sys
app = QtWidgets.QApplication(sys.argv)
cnum = QtWidgets.QWidget()
ui = Ui_cnum()
ui.setupUi(cnum)
cnum.show()
sys.exit(app.exec_())
解决方案
推荐阅读
- mysql - 在 MySQL/SQL 中匹配一对外键
- javascript - 如何以特定方式定位元素?
- java - 为什么程序要吃这么多内存,而年轻的gc要花这么长时间?
- flutter - 错误仅在当前文件打开并在视图中时显示
- javascript - 如何从另一个组件调用反应组件并传递所需的道具
- hibernate - bean 没有创建
- javascript - 显示不同
- flutter - 如何在 Flutter 小部件测试中获取当前变量值
- spring-mvc - Spring MVC 中的 ContentNegotiatingViewResolver 问题
- vue.js - 在另一个组件中使用来自一个组件的函数