欢迎访问宙启技术站
智能推送

在PyQt5中实现用户登录功能

发布时间:2023-12-24 23:24:06

在PyQt5中实现用户登录功能可以通过创建一个窗口应用程序,并使用PyQt5的QWidget类作为主窗口界面,QLineEdit类作为用户名和密码输入框,QPushButton类作为登录按钮。下面是一个简单的用户登录功能的例子:

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QLineEdit, QPushButton, QVBoxLayout


class LoginWindow(QWidget):
    def __init__(self):
        super().__init__()
        self.setWindowTitle("用户登录")
        self.resize(300, 150)

        self.username_label = QLabel("用户名:")
        self.username_input = QLineEdit()
        self.password_label = QLabel("密码:")
        self.password_input = QLineEdit()
        self.password_input.setEchoMode(QLineEdit.Password)
        self.login_button = QPushButton("登录")

        layout = QVBoxLayout()
        layout.addWidget(self.username_label)
        layout.addWidget(self.username_input)
        layout.addWidget(self.password_label)
        layout.addWidget(self.password_input)
        layout.addWidget(self.login_button)

        self.setLayout(layout)

        self.login_button.clicked.connect(self.login)

    def login(self):
        username = self.username_input.text()
        password = self.password_input.text()
        if username == "admin" and password == "admin":
            print("登录成功")
        else:
            print("用户名或密码错误")


if __name__ == "__main__":
    app = QApplication(sys.argv)
    window = LoginWindow()
    window.show()
    sys.exit(app.exec_())

在这个例子中,我们创建了一个继承自QWidget的LoginWindow类作为主窗口界面。窗口上通过QLabel和QLineEdit创建了一个用户名和密码的输入框,用于用户输入用户名和密码。然后使用QPushButton作为登录按钮,当点击登录按钮时会调用login函数进行登录逻辑判断。login函数会获取输入框中的用户名和密码,并判断是否和指定的用户名和密码匹配。如果匹配则打印"登录成功",否则打印"用户名或密码错误"。

if __name__ == "__main__":中创建了一个QApplication对象,然后创建了一个LoginWindow对象,并显示出来。最后通过app.exec_()进入事件循环,使程序保持运行状态。这样就实现了一个简单的用户登录功能。