PyQt5实现用户登录GUI界面及登录后跳转

 更新时间:2021年11月22日 16:05:57   作者:Python集中营  
PyQt5是强大的GUI工具之一,通过其可以实现优秀的桌面应用程序。本文主要介绍了PyQt5实现用户登录GUI界面及登录后跳转,具有一定的参考价值,感兴趣的可以了解一下

PyQt5是强大的GUI工具之一,通过其可以实现优秀的桌面应用程序。希望通过一个简单的登录页面可以让大家顺利入坑,如有不妥之处还请大佬指点改正!

导入业务需要的所有的扩展包。

import sys  # 系统参数操作
from PyQt5.QtWidgets import *  # 模块包含创造经典桌面风格的用户界面提供了一套UI元素的类
from PyQt5.QtCore import *  # 此模块用于处理时间、文件和目录、各种数据类型、流、URL、MIME类型、线程或进程
from PyQt5.QtGui import *  # 含类窗口系统集成、事件处理、二维图形、基本成像、字体和文本

创建主界面窗口。

class MainWindow(QMainWindow):
    def __init__(self, *args, **kwargs):
        '''
        构造函数,初始化参数属性
        :param args:
        :param kwargs:
        '''
        super().__init__(*args, **kwargs)
        self.setWindowTitle('主功能页面')
        self.setFixedWidth(600)
        self.setFixedHeight(600)
创建登录对话框。
class LoginDialog(QDialog):
    def __init__(self, *args, **kwargs):
        '''
        构造函数,初始化登录对话框的内容
        :param args:
        :param kwargs:
        '''
        super().__init__(*args, **kwargs)
        self.setWindowTitle('欢迎登录')  # 设置标题
        self.resize(200, 200)  # 设置宽、高
        self.setFixedSize(self.width(), self.height())
        self.setWindowFlags(Qt.WindowCloseButtonHint)  # 设置隐藏关闭X的按钮

        '''
        定义界面控件设置
        '''
        self.frame = QFrame(self)  # 初始化 Frame对象
        self.verticalLayout = QVBoxLayout(self.frame)  # 设置横向布局
        self.verticalLayout

        self.login_id = QLineEdit()  # 定义用户名输入框
        self.login_id.setPlaceholderText("请输入登录账号")  # 设置默认显示的提示语
        self.verticalLayout.addWidget(self.login_id)  # 将该登录账户设置添加到页面控件

        self.passwd = QLineEdit()  # 定义密码输入框
        self.passwd.setPlaceholderText("请输入登录密码")  # 设置默认显示的提示语
        self.verticalLayout.addWidget(self.passwd)  # 将该登录密码设置添加到页面控件

        self.button_enter = QPushButton()  # 定义登录按钮
        self.button_enter.setText("登录")  # 按钮显示值为登录
        self.verticalLayout.addWidget(self.button_enter)  # 将按钮添加到页面控件

        self.button_quit = QPushButton()  # 定义返回按钮
        self.button_quit.setText("返回")  # 按钮显示值为返回
        self.verticalLayout.addWidget(self.button_quit)  # 将按钮添加到页面控件

        # 绑定按钮事件
        self.button_enter.clicked.connect(self.button_enter_verify)
        self.button_quit.clicked.connect(
            QCoreApplication.instance().quit)  # 返回按钮绑定到退出

    def button_enter_verify(self):
        # 校验账号是否正确
        if self.login_id.text() != "admin":
            print("test1")
            return
        # 校验密码是否正确
        if self.passwd.text() != "admin@1234":
            print("test2")
            return
        # 验证通过,设置QDialog对象状态为允许
        self.accept()

最后通过mian入口函数启动应用。

if __name__ == "__main__":
    # 创建应用
    window_application = QApplication(sys.argv)
    # 设置登录窗口
    login_ui = LoginDialog()
    # 校验是否验证通过
    if login_ui.exec_() == QDialog.Accepted:
        # 初始化主功能窗口
        main_window = MainWindow()
        # 展示窗口
        main_window.show()
        # 设置应用退出
        sys.exit(window_application.exec_())

到此这篇关于 PyQt5实现用户登录GUI界面及登录后跳转的文章就介绍到这了,更多相关 PyQt5 用户登录GUI界面内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python random模块的运用详解

    Python random模块的运用详解

    这篇文章主要为大家介绍了Python random模块的运用,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2021-12-12
  • python编程-将Python程序转化为可执行程序[整理]

    python编程-将Python程序转化为可执行程序[整理]

    python编程-将Python程序转化为可执行程序[整理]...
    2007-04-04
  • python爬虫 requests-html的使用

    python爬虫 requests-html的使用

    这篇文章主要介绍了python爬虫 requests-html的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • Python双向循环链表实现方法分析

    Python双向循环链表实现方法分析

    这篇文章主要介绍了Python双向循环链表,结合实例形式分析了Python双向链表的定义、遍历、添加、删除、搜索等相关操作技巧,需要的朋友可以参考下
    2018-07-07
  • python 请求服务器的实现代码(http请求和https请求)

    python 请求服务器的实现代码(http请求和https请求)

    本篇文章主要介绍了python 请求服务器的实现代码(http请求和https请求),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05
  • Python简单实现网页内容抓取功能示例

    Python简单实现网页内容抓取功能示例

    这篇文章主要介绍了Python简单实现网页内容抓取功能,结合实例形式分析了Python基于urllib模块的网页请求、内容读取等相关操作技巧,需要的朋友可以参考下
    2018-06-06
  • 对python的unittest架构公共参数token提取方法详解

    对python的unittest架构公共参数token提取方法详解

    今天小编就为大家分享一篇对python的unittest架构公共参数token提取方法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • pyx文件 生成pyd 文件用于 cython调用的实现

    pyx文件 生成pyd 文件用于 cython调用的实现

    这篇文章主要介绍了pyx文件 生成pyd 文件用于 cython调用的实现方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • Pandas中DataFrame交换列顺序的方法实现

    Pandas中DataFrame交换列顺序的方法实现

    这篇文章主要介绍了Pandas中DataFrame交换列顺序的方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • Python concurrent.futures模块使用实例

    Python concurrent.futures模块使用实例

    这篇文章主要介绍了Python concurrent.futures模块使用实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12

最新评论