将登录框中的取消按钮使用信号和槽的机制,关闭界面。
将登录按钮使用信号和槽连接到自定义的槽函数中,在槽函数中判断ui界面上输入的账号是否为"admin",密码是否为"123456",如果账号密码匹配成功,当前界面关闭,另一个界面展开。如果匹配失败,则输出登录失败,并将密码框和账号框中的内容清空
视频
import sys
from PyQt6.QtWidgets import QApplication, QMainWindow, QMessageBox
from PyQt6.QtCore import Qt
from PyQt6.uic import loadUi
class LoginWindow(QMainWindow):
def __init__(self):
super().__init__()
loadUi("./login.ui", self) # 加载UI文件
# 连接信号和槽
self.pushButton_login.clicked.connect(self.login_slot)
self.pushButton_cancel.clicked.connect(self.cancel_slot)
def login_slot(self):
# 获取输入的账号和密码
username = self.lineEdit_username.text()
password = self.lineEdit_password.text()
# 判断账号和密码是否正确
if username == "admin" and password == "123456":
# 账号密码正确,关闭当前界面并打开另一个界面
self.close()
# 这里应该实例化并显示另一个界面,如:
# other_window = OtherWindow()
# other_window.show()
QMessageBox.information(self, "登录成功", "欢迎,admin!")
else:
# 账号密码错误,显示错误消息并清空输入框
QMessageBox.warning(self, "登录失败", "账号或密码错误,请重试。")
self.lineEdit_username.clear()
self.lineEdit_password.clear()
def cancel_slot(self):
# 取消按钮被点击,关闭当前界面
self.close()
if __name__ == "__main__":
app = QApplication(sys.argv)
login_window = LoginWindow()
login_window.show()
sys.exit(app.exec())