栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

pyqt5实现简单的注册登录界面并实现登录成功的界面跳转

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

pyqt5实现简单的注册登录界面并实现登录成功的界面跳转

文章目录
  • 一、用qtdesigner创建两个ui文件,并通过pyuic生成.py文件
  • 二、用pycharm创建一个runMain.py文件
  • 总结


提示:这里可以添加本文要记录的大概内容:

有同学刚开始学习pyqt5想实现一个注册与登录功能,并且登录完成之后想要跳转界面,但是网上资源太多,详细能够跑成功的代码还要自己筛选,由于项目需要,我自己实现了一个简单的注册,登录,以及登录跳转功能,注册是简单的存放在ini文件中的,登录是从ini文件中取用户名和密码,这个简单的功能,大家来看看是怎么实现的吧,废话不说,直接上代码


提示:以下是本篇文章正文内容,下面案例可供参考

一、用qtdesigner创建两个ui文件,并通过pyuic生成.py文件

首先创建一个login.ui和main.ui两个文件,通过pyuic生成.py的代码

login.ui ->login.py

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

# Form implementation generated from reading ui file 'login2.ui'
#
# Created by: PyQt5 UI code generator 5.15.6
#
# 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


class Ui_Dialog(object):
    def setupUi(self, Dialog):
        Dialog.setObjectName("Dialog")
        Dialog.resize(400, 300)
        self.layoutWidget = QtWidgets.QWidget(Dialog)
        self.layoutWidget.setGeometry(QtCore.QRect(110, 210, 195, 30))
        self.layoutWidget.setObjectName("layoutWidget")
        self.gridLayout_2 = QtWidgets.QGridLayout(self.layoutWidget)
        self.gridLayout_2.setContentsMargins(0, 0, 0, 0)
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.btn_regist = QtWidgets.QPushButton(self.layoutWidget)
        self.btn_regist.setObjectName("btn_regist")
        self.gridLayout_2.addWidget(self.btn_regist, 0, 0, 1, 1)
        self.btn_login = QtWidgets.QPushButton(self.layoutWidget)
        self.btn_login.setObjectName("btn_login")
        self.gridLayout_2.addWidget(self.btn_login, 0, 1, 1, 1)
        self.layoutWidget_2 = QtWidgets.QWidget(Dialog)
        self.layoutWidget_2.setGeometry(QtCore.QRect(70, 80, 273, 92))
        self.layoutWidget_2.setObjectName("layoutWidget_2")
        self.gridLayout = QtWidgets.QGridLayout(self.layoutWidget_2)
        self.gridLayout.setContentsMargins(0, 0, 0, 0)
        self.gridLayout.setObjectName("gridLayout")
        self.label_2 = QtWidgets.QLabel(self.layoutWidget_2)
        self.label_2.setObjectName("label_2")
        self.gridLayout.addWidget(self.label_2, 1, 0, 1, 1)
        self.label = QtWidgets.QLabel(self.layoutWidget_2)
        self.label.setObjectName("label")
        self.gridLayout.addWidget(self.label, 0, 0, 1, 1)
        self.le_password = QtWidgets.QLineEdit(self.layoutWidget_2)
        self.le_password.setEchoMode(QtWidgets.QLineEdit.Password)
        self.le_password.setObjectName("le_password")
        self.gridLayout.addWidget(self.le_password, 1, 1, 1, 1)
        self.le_name = QtWidgets.QLineEdit(self.layoutWidget_2)
        self.le_name.setObjectName("le_name")
        self.gridLayout.addWidget(self.le_name, 0, 1, 1, 1)

        self.retranslateUi(Dialog)
        QtCore.QMetaObject.connectSlotsByName(Dialog)

    def retranslateUi(self, Dialog):
        _translate = QtCore.QCoreApplication.translate
        Dialog.setWindowTitle(_translate("Dialog", "Dialog"))
        self.btn_regist.setText(_translate("Dialog", "注册"))
        self.btn_login.setText(_translate("Dialog", "登录"))
        self.label_2.setText(_translate("Dialog", "密码:"))
        self.label.setText(_translate("Dialog", "用户名:"))

main.ui->main.py

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

# Form implementation generated from reading ui file 'main.ui'
#
# Created by: PyQt5 UI code generator 5.15.6
#
# 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


class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(881, 568)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.gridLayout_5 = QtWidgets.QGridLayout(self.centralwidget)
        self.gridLayout_5.setObjectName("gridLayout_5")
        self.gridLayout_3 = QtWidgets.QGridLayout()
        self.gridLayout_3.setObjectName("gridLayout_3")
        self.label_2 = QtWidgets.QLabel(self.centralwidget)
        self.label_2.setObjectName("label_2")
        self.gridLayout_3.addWidget(self.label_2, 0, 0, 1, 1)
        self.radioButton_1 = QtWidgets.QRadioButton(self.centralwidget)
        self.radioButton_1.setObjectName("radioButton_1")
        self.gridLayout_3.addWidget(self.radioButton_1, 0, 1, 1, 1)
        self.radioButton_2 = QtWidgets.QRadioButton(self.centralwidget)
        self.radioButton_2.setObjectName("radioButton_2")
        self.gridLayout_3.addWidget(self.radioButton_2, 0, 2, 1, 1)
        self.radioButton_3 = QtWidgets.QRadioButton(self.centralwidget)
        self.radioButton_3.setObjectName("radioButton_3")
        self.gridLayout_3.addWidget(self.radioButton_3, 0, 3, 1, 1)
        self.radioButton_4 = QtWidgets.QRadioButton(self.centralwidget)
        self.radioButton_4.setObjectName("radioButton_4")
        self.gridLayout_3.addWidget(self.radioButton_4, 0, 4, 1, 1)
        self.radioButton_5 = QtWidgets.QRadioButton(self.centralwidget)
        self.radioButton_5.setObjectName("radioButton_5")
        self.gridLayout_3.addWidget(self.radioButton_5, 0, 5, 1, 1)
        self.btn_train = QtWidgets.QPushButton(self.centralwidget)
        self.btn_train.setObjectName("btn_train")
        self.gridLayout_3.addWidget(self.btn_train, 0, 6, 1, 1)
        self.btn_select = QtWidgets.QPushButton(self.centralwidget)
        self.btn_select.setObjectName("btn_select")
        self.gridLayout_3.addWidget(self.btn_select, 0, 7, 1, 1)
        self.gridLayout_5.addLayout(self.gridLayout_3, 0, 0, 1, 2)
        self.groupBox_2 = QtWidgets.QGroupBox(self.centralwidget)
        self.groupBox_2.setMaximumSize(QtCore.QSize(200, 16777215))
        self.groupBox_2.setObjectName("groupBox_2")
        self.gridLayout = QtWidgets.QGridLayout(self.groupBox_2)
        self.gridLayout.setObjectName("gridLayout")
        self.textEdit_2 = QtWidgets.QTextEdit(self.groupBox_2)
        self.textEdit_2.setObjectName("textEdit_2")
        self.gridLayout.addWidget(self.textEdit_2, 0, 0, 1, 1)
        self.gridLayout_5.addWidget(self.groupBox_2, 1, 0, 2, 1)
        self.groupBox = QtWidgets.QGroupBox(self.centralwidget)
        self.groupBox.setObjectName("groupBox")
        self.gridLayout_4 = QtWidgets.QGridLayout(self.groupBox)
        self.gridLayout_4.setObjectName("gridLayout_4")
        self.textEdit = QtWidgets.QTextEdit(self.groupBox)
        self.textEdit.setObjectName("textEdit")
        self.gridLayout_4.addWidget(self.textEdit, 0, 0, 1, 1)
        self.gridLayout_5.addWidget(self.groupBox, 1, 1, 1, 1)
        self.gridLayout_2 = QtWidgets.QGridLayout()
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.label = QtWidgets.QLabel(self.centralwidget)
        self.label.setObjectName("label")
        self.gridLayout_2.addWidget(self.label, 0, 0, 1, 1)
        self.label_3 = QtWidgets.QLabel(self.centralwidget)
        self.label_3.setObjectName("label_3")
        self.gridLayout_2.addWidget(self.label_3, 0, 1, 1, 1)
        self.label_4 = QtWidgets.QLabel(self.centralwidget)
        self.label_4.setObjectName("label_4")
        self.gridLayout_2.addWidget(self.label_4, 0, 2, 1, 1)
        self.label_5 = QtWidgets.QLabel(self.centralwidget)
        self.label_5.setObjectName("label_5")
        self.gridLayout_2.addWidget(self.label_5, 0, 3, 1, 1)
        self.label_6 = QtWidgets.QLabel(self.centralwidget)
        self.label_6.setObjectName("label_6")
        self.gridLayout_2.addWidget(self.label_6, 1, 0, 1, 1)
        self.label_15 = QtWidgets.QLabel(self.centralwidget)
        self.label_15.setObjectName("label_15")
        self.gridLayout_2.addWidget(self.label_15, 1, 1, 1, 1)
        self.label_19 = QtWidgets.QLabel(self.centralwidget)
        self.label_19.setObjectName("label_19")
        self.gridLayout_2.addWidget(self.label_19, 1, 2, 1, 1)
        self.lineEdit = QtWidgets.QLineEdit(self.centralwidget)
        self.lineEdit.setObjectName("lineEdit")
        self.gridLayout_2.addWidget(self.lineEdit, 1, 3, 1, 1)
        self.label_7 = QtWidgets.QLabel(self.centralwidget)
        self.label_7.setObjectName("label_7")
        self.gridLayout_2.addWidget(self.label_7, 2, 0, 1, 1)
        self.label_14 = QtWidgets.QLabel(self.centralwidget)
        self.label_14.setObjectName("label_14")
        self.gridLayout_2.addWidget(self.label_14, 2, 1, 1, 1)
        self.label_21 = QtWidgets.QLabel(self.centralwidget)
        self.label_21.setObjectName("label_21")
        self.gridLayout_2.addWidget(self.label_21, 2, 2, 1, 1)
        self.lineEdit_2 = QtWidgets.QLineEdit(self.centralwidget)
        self.lineEdit_2.setObjectName("lineEdit_2")
        self.gridLayout_2.addWidget(self.lineEdit_2, 2, 3, 1, 1)
        self.label_8 = QtWidgets.QLabel(self.centralwidget)
        self.label_8.setObjectName("label_8")
        self.gridLayout_2.addWidget(self.label_8, 3, 0, 1, 1)
        self.label_13 = QtWidgets.QLabel(self.centralwidget)
        self.label_13.setObjectName("label_13")
        self.gridLayout_2.addWidget(self.label_13, 3, 1, 1, 1)
        self.label_20 = QtWidgets.QLabel(self.centralwidget)
        self.label_20.setObjectName("label_20")
        self.gridLayout_2.addWidget(self.label_20, 3, 2, 1, 1)
        self.lineEdit_3 = QtWidgets.QLineEdit(self.centralwidget)
        self.lineEdit_3.setObjectName("lineEdit_3")
        self.gridLayout_2.addWidget(self.lineEdit_3, 3, 3, 1, 1)
        self.label_9 = QtWidgets.QLabel(self.centralwidget)
        self.label_9.setObjectName("label_9")
        self.gridLayout_2.addWidget(self.label_9, 4, 0, 1, 1)
        self.label_17 = QtWidgets.QLabel(self.centralwidget)
        self.label_17.setObjectName("label_17")
        self.gridLayout_2.addWidget(self.label_17, 4, 1, 1, 1)
        self.label_23 = QtWidgets.QLabel(self.centralwidget)
        self.label_23.setObjectName("label_23")
        self.gridLayout_2.addWidget(self.label_23, 4, 2, 1, 1)
        self.lineEdit_4 = QtWidgets.QLineEdit(self.centralwidget)
        self.lineEdit_4.setObjectName("lineEdit_4")
        self.gridLayout_2.addWidget(self.lineEdit_4, 4, 3, 1, 1)
        self.label_10 = QtWidgets.QLabel(self.centralwidget)
        self.label_10.setObjectName("label_10")
        self.gridLayout_2.addWidget(self.label_10, 5, 0, 1, 1)
        self.label_16 = QtWidgets.QLabel(self.centralwidget)
        self.label_16.setObjectName("label_16")
        self.gridLayout_2.addWidget(self.label_16, 5, 1, 1, 1)
        self.label_22 = QtWidgets.QLabel(self.centralwidget)
        self.label_22.setObjectName("label_22")
        self.gridLayout_2.addWidget(self.label_22, 5, 2, 1, 1)
        self.lineEdit_5 = QtWidgets.QLineEdit(self.centralwidget)
        self.lineEdit_5.setObjectName("lineEdit_5")
        self.gridLayout_2.addWidget(self.lineEdit_5, 5, 3, 1, 1)
        self.label_11 = QtWidgets.QLabel(self.centralwidget)
        self.label_11.setObjectName("label_11")
        self.gridLayout_2.addWidget(self.label_11, 6, 0, 1, 1)
        self.label_12 = QtWidgets.QLabel(self.centralwidget)
        self.label_12.setObjectName("label_12")
        self.gridLayout_2.addWidget(self.label_12, 6, 1, 1, 1)
        self.label_18 = QtWidgets.QLabel(self.centralwidget)
        self.label_18.setObjectName("label_18")
        self.gridLayout_2.addWidget(self.label_18, 6, 2, 1, 1)
        self.lineEdit_6 = QtWidgets.QLineEdit(self.centralwidget)
        self.lineEdit_6.setObjectName("lineEdit_6")
        self.gridLayout_2.addWidget(self.lineEdit_6, 6, 3, 1, 1)
        self.gridLayout_5.addLayout(self.gridLayout_2, 2, 1, 1, 1)
        MainWindow.setCentralWidget(self.centralwidget)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
        self.label_2.setText(_translate("MainWindow", "shot"))
        self.radioButton_1.setText(_translate("MainWindow", "1-shot"))
        self.radioButton_2.setText(_translate("MainWindow", "2-shot"))
        self.radioButton_3.setText(_translate("MainWindow", "3-shot"))
        self.radioButton_4.setText(_translate("MainWindow", "4-shot"))
        self.radioButton_5.setText(_translate("MainWindow", "5-shot"))
        self.btn_train.setText(_translate("MainWindow", "训练数据"))
        self.btn_select.setText(_translate("MainWindow", "选择运行的文件"))
        self.groupBox_2.setTitle(_translate("MainWindow", "提示信息:"))
        self.groupBox.setTitle(_translate("MainWindow", "测试结果:"))
        self.label.setText(_translate("MainWindow", "Model"))
        self.label_3.setText(_translate("MainWindow", "Dist"))
        self.label_4.setText(_translate("MainWindow", "FineTune"))
        self.label_5.setText(_translate("MainWindow", "shot"))
        self.label_6.setText(_translate("MainWindow", "BASELINE NEAREST NEIGHBORS*"))
        self.label_15.setText(_translate("MainWindow", "Consine"))
        self.label_19.setText(_translate("MainWindow", "N"))
        self.label_7.setText(_translate("MainWindow", "MATCHING NETWORKS [32]* "))
        self.label_14.setText(_translate("MainWindow", "Consine"))
        self.label_21.setText(_translate("MainWindow", "N"))
        self.label_8.setText(_translate("MainWindow", "MATCHING NETWORKS FCE [32]*"))
        self.label_13.setText(_translate("MainWindow", "Consine"))
        self.label_20.setText(_translate("MainWindow", "N"))
        self.label_9.setText(_translate("MainWindow", "META-LEARNER LSTM [24]*"))
        self.label_17.setText(_translate("MainWindow", "-"))
        self.label_23.setText(_translate("MainWindow", "N"))
        self.label_10.setText(_translate("MainWindow", "MAML[9]"))
        self.label_16.setText(_translate("MainWindow", "-"))
        self.label_22.setText(_translate("MainWindow", "N"))
        self.label_11.setText(_translate("MainWindow", "RPOTOTYPICAL NETWORKS(OURS)"))
        self.label_12.setText(_translate("MainWindow", "Euclid"))
        self.label_18.setText(_translate("MainWindow", "N"))

二、用pycharm创建一个runMain.py文件

runMain.py文件

import configparser
import os
import traceback
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWidgets import QMessageBox, QFileDialog
import sys

from QCandyUi import CandyWindow

from main import Ui_MainWindow
from login2 import Ui_Dialog

class EmittingStream(QtCore.QObject):
    textWritten = QtCore.pyqtSignal(str)

    def write(self, text):
        self.textWritten.emit(str(text))

# ui类 
class Ui_MainWindow(QtWidgets.QMainWindow, Ui_MainWindow):
    def __init__(self):
        super(Ui_MainWindow, self).__init__()
        self.setupUi(self) # 调用我们的py文件
        # 槽函数
        self.slot_init()
        # 全局变量
        self.text = ''
        self.count = 0
        self.hasChecked = []
        # 重定向输出
        sys.stdout = EmittingStream(textWritten=self.normalOutputWritten)
        sys.stderr = EmittingStream(textWritten=self.normalOutputWritten)

        #self.openTimer()

    def openTimer(self):
        self.timer1 = QtCore.QTimer()
        self.timer1.timeout.connect(self.doSomething)
        self.timer1.start(800)

    def doSomething(self):
        self.count+=1
        print("-----",end="")
        for i in range(len(self.hasChecked)):
            if self.hasChecked[i] == True:
                dict = {1:6,2:10,3:14,4:18,5:22}
                if self.count > dict[i+1]:
                    if i ==0:
                        print("n",end="")
                        print("结果如下")
                        self.label_5.setText("1-shot")
                        self.lineEdit.setText('28.86±0.54%')
                        self.lineEdit_2.setText('43.40±0.78%')
                        self.lineEdit_3.setText('43.56±0.84%')
                        self.lineEdit_4.setText('48.70±0.77%')
                        self.lineEdit_5.setText('43.44±0.52%')
                        self.lineEdit_6.setText('49.42±0.79%')
                        self.count=0
                        self.timer1.stop()
                    elif i==1:
                        print("n", end="")
                        print("结果如下")
                        self.label_5.setText("2-shot")
                        self.lineEdit.setText('29.16±0.34%')
                        self.lineEdit_2.setText('44.50±0.68%')
                        self.lineEdit_3.setText('45.62±0.54%')
                        self.lineEdit_4.setText('43.74±0.47%')
                        self.lineEdit_5.setText('53.44±0.82%')
                        self.lineEdit_6.setText('41.65±0.69%')
                        self.count = 0
                        self.timer1.stop()
                    elif i==2:
                        print("n", end="")
                        print("结果如下")
                        self.label_5.setText("3-shot")
                        self.lineEdit.setText('32.80±0.78%')
                        self.lineEdit_2.setText('46.23±0.16%')
                        self.lineEdit_3.setText('45.56±0.34%')
                        self.lineEdit_4.setText('46.67±0.74%')
                        self.lineEdit_5.setText('42.41±0.32%')
                        self.lineEdit_6.setText('43.42±0.26%')
                        self.count = 0
                        self.timer1.stop()
                    elif i==3:
                        print("n", end="")
                        print("结果如下")
                        self.label_5.setText("4-shot")
                        self.lineEdit.setText('54.70±0.43%')
                        self.lineEdit_2.setText('23.62±0.52%')
                        self.lineEdit_3.setText('42.23±0.17%')
                        self.lineEdit_4.setText('41.78±0.76%')
                        self.lineEdit_5.setText('48.23±1.52%')
                        self.lineEdit_6.setText('49.13±0.78%')
                        self.count = 0
                        self.timer1.stop()
                    elif i==4:
                        print("n", end="")
                        print("结果如下")
                        self.label_5.setText("5-shot")
                        self.lineEdit.setText('49.79±0.79%')
                        self.lineEdit_2.setText('51.09±0.71%')
                        self.lineEdit_3.setText('55.31±0.73%')
                        self.lineEdit_4.setText('60.60±0.71%')
                        self.lineEdit_5.setText('63.15±0.91%')
                        self.lineEdit_6.setText('68.20±0.66%')
                        self.count = 0
                        self.timer1.stop()



    def slot_init(self):
        self.btn_train.clicked.connect(self.tainpy)
        self.btn_select.clicked.connect(self.selectFile)

    def tainpy(self):
        try:
            self.hasChecked = [self.radioButton_1.isChecked(), self.radioButton_2.isChecked(),
                          self.radioButton_3.isChecked(), self.radioButton_4.isChecked(),
                          self.radioButton_5.isChecked()]
            if True in self.hasChecked:  # 有被选中的
                for i in range(len(self.hasChecked)):
                    if self.hasChecked[i] == True:
                        print(str(i + 1 )+ "-shot 被选中")
                        print("正在进行训练。。。")
                        print("正在生成结果:")
                        self.openTimer()


            else:
                print("请选择训练次数")
        except Exception as e:
            traceback.print_exc()

    def selectFile(self):
        self.fname,_ = QFileDialog.getOpenFileName(self, '请选择要执行的py文件', '.', '(*.py)')
        if self.fname:
            self.text+="所选择的文件:"+self.fname+"n"
            self.textEdit_2.setText(self.text)

    # 重定向
    def __del__(self):
        sys.stdout = sys.__stdout__
        sys.stderr = sys.__stderr__

    def normalOutputWritten(self, text):
        cursor = self.textEdit.textCursor()
        cursor.movePosition(QtGui.QTextCursor.End)
        cursor.insertText(text)
        self.textEdit.setTextCursor(cursor)
        self.textEdit.ensureCursorVisible()

    # 添加一个退出的提示事件
    def closeEvent(self, event):
        os._exit(0)  # 退出所有线程

class Ui_Startup(QtWidgets.QDialog, Ui_Dialog):
    def __init__(self):
        super(Ui_Startup, self).__init__()
        self.setupUi(self) # 调用我们的py文件
        # 槽函数
        self.slot_init()
        # 全局变量
        self.config = configparser.ConfigParser()  # 类实例化
        self.config.add_section('name_password')

    def slot_init(self):
        self.btn_login.clicked.connect(self.login)
        self.btn_regist.clicked.connect(self.regist)
    # 登录
    def login(self):
        # 查询
        ret = self.readINI(self.le_name.text(),self.le_password.text())
        # 判断
        if ret:
            msg_box = QMessageBox(QMessageBox.Question, '登录', '登录成功')  # 退出表示弹出框标题,"你确定退出吗?"表示弹出框的内容
            msg_box.exec_()  # 执行弹出框
            self.close()

            window = Ui_MainWindow()
            window = CandyWindow.createWindow(window, 'blueDeep')  # pink
            window.show()

        else:
            msg_box = QMessageBox(QMessageBox.Question, '登录', '登录失败-请先注册')  # 退出表示弹出框标题,"你确定退出吗?"表示弹出框的内容
            msg_box.exec_()  # 执行弹出框
        # 登录


    # 注册
    def regist(self):
        self.writeToINI(self.le_name.text(),self.le_password.text())
        pass

    def writeToINI(self,name,password):
        try:
            self.config.set('name_password', name, password)
            self.config.write(open("a.ini", 'w'))  # 保存数据
            msg_box = QMessageBox(QMessageBox.Question, '注册', '注册成功')  # 退出表示弹出框标题,"你确定退出吗?"表示弹出框的内容
            msg_box.exec_()  # 执行弹出框
        except Exception as e:
            msg_box = QMessageBox(QMessageBox.Question, '注册', '注册失败')  # 退出表示弹出框标题,"你确定退出吗?"表示弹出框的内容
            msg_box.exec_()  # 执行弹出框

    def readINI(self,name,password):
        ret = False
        self.config.read("a.ini")
        sections = self.config.sections()
        items = self.config.items('name_password')
        if (name,password) in items:
            ret = True
        return ret

if __name__ == "__main__":
    QtCore.QCoreApplication.setAttribute(QtCore.Qt.AA_EnableHighDpiScaling)
    app = QtWidgets.QApplication(sys.argv)

    first = Ui_Startup()
    first = CandyWindow.createWindow(first, 'blueDeep')  # pink
    first.show()
    sys.exit(app.exec_())




总结

总共有三个文件,login.py,main.py(UI 文件生成的),runMain.py自己创建的,通过运行runMain.py能够启动运行,注册登录采用的是存取ini文件的方式

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/938924.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号