login.py
-- coding: utf-8 --
Form implementation generated from reading ui file 'login.ui'
Created by: PyQt5 UI code generator 5.15.2
WARNING: Any manual changes made to this file will be lost when pyuic5 is
run again. Do not edit this file unless you know what you are doing.
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWidgets import QMessageBox, QMainWindow
import sys # 导入sys模块
import img_rc
from service import service
import main
import post
class Ui_MainWindow(QMainWindow):
# 构造方法
def init(self):
super(Ui_MainWindow, self).init()
self.setWindowFlags(QtCore.Qt.MSWindowsFixedSizeDialogHint) # 只显示最小化和关闭按钮
self.setupUi(self) # 初始化窗体设置
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow")
MainWindow.setWindowFlags(QtCore.Qt.MSWindowsFixedSizeDialogHint) # 只显示最小化和关闭按钮
MainWindow.resize(467, 294)
self.centralwidget = QtWidgets.QWidget(MainWindow)
self.centralwidget.setObjectName("centralwidget")
self.label = QtWidgets.QLabel(self.centralwidget)
self.label.setGeometry(QtCore.QRect(1, 0, 461, 151))
self.label.setStyleSheet("border-image: url(:/png/img/1.png);")
self.label.setText("")
self.label.setObjectName("label")
self.label_2 = QtWidgets.QLabel(self.centralwidget)
self.label_2.setGeometry(QtCore.QRect(40, 160, 61, 16))
self.label_2.setObjectName("label_2")
self.lineEdit = QtWidgets.QLineEdit(self.centralwidget)
self.lineEdit.setGeometry(QtCore.QRect(100, 160, 141, 21))
self.lineEdit.setObjectName("lineEdit")
self.label_3 = QtWidgets.QLabel(self.centralwidget)
self.label_3.setGeometry(QtCore.QRect(40, 200, 61, 16))
self.label_3.setObjectName("label_3")
self.lineEdit_2 = QtWidgets.QLineEdit(self.centralwidget)
self.lineEdit_2.setGeometry(QtCore.QRect(100, 200, 141, 21))
self.lineEdit_2.setEchoMode(QtWidgets.QLineEdit.Password)
self.lineEdit_2.setValidator(QtGui.QIntValidator(10000000, 99999999))
# 输入密码后按回车键执行登录操作
self.lineEdit_2.editingFinished.connect(self.openlog)
self.lineEdit_2.setObjectName("lineEdit_2")
self.pushButton = QtWidgets.QPushButton(self.centralwidget)
self.pushButton.setGeometry(QtCore.QRect(300, 160, 93, 28))
# 单击“登录”按钮执行登录操作
self.pushButton.clicked.connect(self.openlog)
self.pushButton.setObjectName("pushButton")
self.pushButton_2 = QtWidgets.QPushButton(self.centralwidget)
self.pushButton_2.setGeometry(QtCore.QRect(300, 200, 93, 28))
self.pushButton_2.clicked.connect(MainWindow.close) # 关闭登录窗体
self.pushButton_2.setObjectName("pushButton_2")
self.pushButton_3 = QtWidgets.QPushButton(self.centralwidget)
self.pushButton_3.setGeometry(QtCore.QRect(300, 242, 93, 28))
self.pushButton_3.clicked.connect(self.zc) # 注册
self.pushButton_3.setObjectName("pushButton_3")
self.label_4 = QtWidgets.QLabel(self.centralwidget)
self.label_4.setGeometry(QtCore.QRect(40, 230, 61, 16))
self.label_4.setObjectName("label_4")
self.comboBox = QtWidgets.QComboBox(self.centralwidget)
self.comboBox.setGeometry(QtCore.QRect(100, 230, 141, 22))
self.comboBox.setObjectName("comboBox")
self.comboBox.addItem("")
self.comboBox.addItem("")
self.comboBox.addItem("")
MainWindow.setCentralWidget(self.centralwidget)
self.menubar = QtWidgets.QMenuBar(MainWindow)
self.menubar.setGeometry(QtCore.QRect(0, 0, 467, 26))
self.menubar.setObjectName("menubar")
MainWindow.setMenuBar(self.menubar)
self.statusbar = QtWidgets.QStatusBar(MainWindow)
self.statusbar.setObjectName("statusbar")
MainWindow.setStatusBar(self.statusbar)
self.retranslateUi(MainWindow)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
def retranslateUi(self, MainWindow):
_translate = QtCore.QCoreApplication.translate
MainWindow.setWindowTitle(_translate("MainWindow", "登入界面 by:武汉东湖学院 宛森"))
self.label_2.setText(_translate("MainWindow", "用户名:"))
self.label_3.setText(_translate("MainWindow", "密 码:"))
self.pushButton.setText(_translate("MainWindow", "登入"))
self.pushButton_2.setText(_translate("MainWindow", "退出"))
self.pushButton_3.setText(_translate("MainWindow", "注册"))
self.label_4.setText(_translate("MainWindow", "角色"))
self.comboBox.setItemText(0, _translate("MainWindow", "管理员"))
self.comboBox.setItemText(1, _translate("MainWindow", "老师"))
self.comboBox.setItemText(2, _translate("MainWindow", "学生"))
def openlog(self):
service.userName = self.lineEdit.text() # 全局变量,记录用户名
self.userPwd = self.lineEdit_2.text() # 记录用户密码
self.type = self.comboBox.currentText()
print('type = ', self.type)
if (self.type == '管理员'):
index= 3
elif (self.type == '老师'):
index = 2
else:
index = 1
if service.userName != "" and self.userPwd != "": # 判断用户名和密码不为空
# 根据用户名和密码查询数据
result = service.query("select * from login where name = %s and password = %s and type = %s",
service.userName, self.userPwd, index)
if len(result) > 0: # 如果查询结果大于0,说明存在该用户,可以登录
self.w = main.Ui_MainWindow() # 创建主窗体对象
g_usertype = index
self.w.settype(index)
print(result[0][7])
self.w.setstudenid(result[0][7])
self.w.show() # 显示主窗体
MainWindow.hide() # 隐藏当前的登录窗体
else:
self.lineEdit.setText("") # 清空用户名文本
self.lineEdit_2.setText("") # 清空密码文本框
QMessageBox.warning(None, '警告', '请输入正确的用户名和密码!', QMessageBox.Ok)
else:
QMessageBox.warning(None, '警告', '请输入用户名和密码!', QMessageBox.Ok)
def zc(self):
self.m = post.Ui_MainWindow()
self.m.show()
MainWindow.hide() # 隐藏当前的登录窗体
if name == 'main':
app = QtWidgets.QApplication(sys.argv)
MainWindow = QtWidgets.QMainWindow() # 创建窗体对象
ui = Ui_MainWindow() # 创建PyQt5设计的窗体对象
ui.setupUi(MainWindow) # 调用PyQt5窗体的方法对窗体对象进行初始化设置
MainWindow.show() # 显示窗体
sys.exit(app.exec_()) # 程序关闭时退出进程

浙公网安备 33010602011771号