Utilice Python para escribir la interfaz de inicio de sesión del usuario y Python para escribir la ventana de inicio de sesión.

Este artículo presenta principalmente el uso de Python para escribir la interfaz de inicio de sesión del usuario, que tiene cierto valor de referencia y los amigos que lo necesiten pueden consultarlo. Espero que obtengas muchos beneficios después de leer este artículo y deja que el editor te lleve a comprenderlo juntos.

Prefacio

El texto y las imágenes de este artículo provienen de Internet y tienen fines educativos y de comunicación únicamente. No tienen ningún propósito comercial. Los derechos de autor pertenecen al autor original. Si tiene alguna pregunta, comuníquese con nosotros a tiempo para procesarla.

Programación GUI de Python: producción de una plataforma de visualización de películas en línea de alta definición, visualización gratuita de todas las películas en Internet

https://www.bilibili.com/video/BV1tz4y1o7Yc/

Caso: Diseñar una interfaz de inicio de sesión de usuario

Herramientas: Python PyQt5

Los resultados de ejecutar el programa son los siguientes:

(1) Interfaz inicial

(2) Ingrese "Nombre de usuario" y "Contraseña" y haga clic en "Iniciar sesión"

(3) Cambiar entre inicio de sesión de "Administrador" y "Usuario normal"

(4) Haga clic en el botón "Salir" para salir de la interfaz.

El procedimiento de diseño es el siguiente:

# -*- coding: utf-8 -*-


from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtGui import QPixmap, QIcon
from PyQt5.QtWidgets import QMessageBox


class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(300, 180)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")


        self.label = QtWidgets.QLabel(self.centralwidget)
        self.label.setGeometry(QtCore.QRect(60, 30, 51, 16))
        self.label.setObjectName("label")
        self.label_2 = QtWidgets.QLabel(self.centralwidget)
        self.label_2.setGeometry(QtCore.QRect(60, 60, 51, 16))
        self.label_2.setObjectName("label_2")


        self.lineEdit = QtWidgets.QLineEdit(self.centralwidget)
        self.lineEdit.setGeometry(QtCore.QRect(120, 30, 113, 20))
        self.lineEdit.setObjectName("lineEdit")


        self.lineEdit_2 = QtWidgets.QLineEdit(self.centralwidget)
        self.lineEdit_2.setGeometry(QtCore.QRect(120, 60, 113, 20))
        self.lineEdit_2.setObjectName("lineEdit_2")
        self.lineEdit_2.setEchoMode(QtWidgets.QLineEdit.Password)  # 设置文本框为密码
        self.lineEdit_2.setValidator(QtGui.QIntValidator(10000000,99999999))  # 设置只能输入8位数字
        
        self.pushButton = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton.setGeometry(QtCore.QRect(70, 120, 61, 27))
        self.pushButton.setObjectName("pushButton")
        self.pushButton.setIcon(QIcon(QPixmap("login.ico")))  # 为“登录”按钮设置图标


        self.label = QtWidgets.QLabel(self.centralwidget)
        self.label.setGeometry(QtCore.QRect(60, 30, 51, 16))
        self.label.setObjectName("label")
        self.label_2 = QtWidgets.QLabel(self.centralwidget)
        self.label_2.setGeometry(QtCore.QRect(60, 60, 51, 16))
        self.label_2.setObjectName("label_2")


        self.radioButton = QtWidgets.QRadioButton(self.centralwidget)
        self.radioButton.setGeometry(QtCore.QRect(70, 90, 71, 18))
        self.radioButton.setObjectName("radioButton")
        self.radioButton.setChecked(True)  # 设置“管理员单选按钮默认选中


        self.radioButton_2 = QtWidgets.QRadioButton(self.centralwidget)
        self.radioButton_2.setGeometry(QtCore.QRect(150, 90, 81, 18))
        self.radioButton_2.setObjectName("radioButton_2")


        self.pushButton_2 = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton_2.setGeometry(QtCore.QRect(160, 120, 61, 27))
        self.pushButton_2.setObjectName("pushButton_2")
        self.pushButton_2.setIcon(QIcon(QPixmap("exit.ico")))  # 为“退出”按钮设置图标


        MainWindow.setCentralWidget(self.centralwidget)
        self.retranslateUi(MainWindow)


        self.pushButton.clicked.connect(self.login)  # 为“登录”按钮的clicked信号绑定自定义槽函数
        self.pushButton_2.clicked.connect(MainWindow.close)  # 为“退出”按钮的clicked信号绑定MainWindow窗口自带的close()槽函数
        self.radioButton.toggled.connect(self.select)  # 为单选按钮的toggled信号绑定自定义槽函数




        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 317, 26))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)


        QtCore.QMetaObject.connectSlotsByName(MainWindow)
    def login(self):
        from PyQt5.QtWidgets import QMessageBox
        # 使用information()方法弹出信息提示框
        QMessageBox.information(MainWindow, "登录信息", "用户名: " + self.lineEdit.text() +
                                "  密码:" + self.lineEdit_2.text(), QMessageBox.Ok)


    # 自定义槽函数,用来判断用户登录身份
    def select(self):
        if self.radioButton.isChecked():    # 判断是否为管理员登录
            QMessageBox.information(MainWindow, "提示", "您选择的是 管理员 登录", QMessageBox.Ok)
        elif self.radioButton_2.isChecked():    # 判断是否为普通用户登录
            QMessageBox.information(MainWindow, "提示", "您选择的是 普通用户  登录", QMessageBox.Ok)




    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "系统登录"))
        self.label.setText(_translate("MainWindow", "用户名:"))
        self.label_2.setText(_translate("MainWindow", "密 码:"))
        self.pushButton.setText(_translate("MainWindow", "登录"))
        self.pushButton_2.setText(_translate("MainWindow", "退出"))
        self.radioButton.setText(_translate("MainWindow", "管理员"))
        self.radioButton_2.setText(_translate("MainWindow", "普通用户"))


import sys
if __name__ == '__main__':
    app = QtWidgets.QApplication(sys.argv)
    MainWindow = QtWidgets.QMainWindow()
    ui = Ui_MainWindow()
    ui.setupUi(MainWindow)
    MainWindow.show()
    sys.exit(app.exec_())

Supongo que te gusta

Origin blog.csdn.net/chatgpt001/article/details/132969039
Recomendado
Clasificación