使用PYQT5设计登录界面并实现界面跳转

这篇具有很好参考价值的文章主要介绍了使用PYQT5设计登录界面并实现界面跳转。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录 

1 UI登录界面的布局

2 UI登录界面布局对应的代码

3 登录界面和界面跳转完整代码

4 跳转界面代码函数和优化界面代码

5 最终效果


1 UI登录界面的布局

pycharm已有ui界面怎么实现登录,python,图像处理,机器学习,opencv,pycharm

       其中,<欢迎使用 XXXX 软件><管理员><密码>使用的是左边功能的 label 类、<登录>使用的是左边功能的 Push Button 类、<管理员和密码>的输入使用的是左边功能的  Line Edit 类。这些输出显示和按键功能中的字体大小和边框都可以对应根据右边的属性进行更改设置。

2 UI登录界面布局对应的代码

(1)项目的目录如下,login.ui 是上面保存的的界面布局。

pycharm已有ui界面怎么实现登录,python,图像处理,机器学习,opencv,pycharm

 (2)UI界面布局的对应代码,则是 login.py 文件,可以右击 login.ui 文件,找到 Exernal Tools 。然后点击 PyUIC ,就可以自动生成 login.py 文件,具体操作和生成的代码如下:

pycharm已有ui界面怎么实现登录,python,图像处理,机器学习,opencv,pycharm

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

# Form implementation generated from reading ui file 'login.ui'
#
# Created by: PyQt5 UI code generator 5.15.4
#
# 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_login_MainWindow(object):
    def setupUi(self, login_MainWindow):
        login_MainWindow.setObjectName("login_MainWindow")
        login_MainWindow.setEnabled(True)
        login_MainWindow.resize(575, 392)
        login_MainWindow.setAnimated(True)
        self.centralwidget = QtWidgets.QWidget(login_MainWindow)
        self.centralwidget.setEnabled(True)
        self.centralwidget.setObjectName("centralwidget")
        self.label_3 = QtWidgets.QLabel(self.centralwidget)
        self.label_3.setGeometry(QtCore.QRect(90, 30, 391, 79))
        font = QtGui.QFont()
        font.setPointSize(30)
        font.setBold(True)
        font.setItalic(True)
        font.setWeight(75)
        self.label_3.setFont(font)
        self.label_3.setObjectName("label_3")
        self.label_2 = QtWidgets.QLabel(self.centralwidget)
        self.label_2.setGeometry(QtCore.QRect(100, 200, 71, 41))
        font = QtGui.QFont()
        font.setPointSize(15)
        self.label_2.setFont(font)
        self.label_2.setObjectName("label_2")
        self.label = QtWidgets.QLabel(self.centralwidget)
        self.label.setGeometry(QtCore.QRect(100, 150, 81, 41))
        font = QtGui.QFont()
        font.setPointSize(15)
        self.label.setFont(font)
        self.label.setObjectName("label")
        self.lineEdit = QtWidgets.QLineEdit(self.centralwidget)
        self.lineEdit.setGeometry(QtCore.QRect(180, 200, 221, 41))
        font = QtGui.QFont()
        font.setPointSize(15)
        self.lineEdit.setFont(font)
        self.lineEdit.setText("")
        self.lineEdit.setEchoMode(QtWidgets.QLineEdit.Password)
        self.lineEdit.setObjectName("lineEdit")
        self.lineEdit_2 = QtWidgets.QLineEdit(self.centralwidget)
        self.lineEdit_2.setGeometry(QtCore.QRect(180, 150, 221, 41))
        font = QtGui.QFont()
        font.setPointSize(15)
        self.lineEdit_2.setFont(font)
        self.lineEdit_2.setObjectName("lineEdit_2")
        self.pushButton = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton.setGeometry(QtCore.QRect(180, 280, 171, 51))
        font = QtGui.QFont()
        font.setPointSize(20)
        font.setBold(True)
        font.setWeight(75)
        self.pushButton.setFont(font)
        self.pushButton.setObjectName("pushButton")
        login_MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(login_MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 575, 22))
        self.menubar.setObjectName("menubar")
        login_MainWindow.setMenuBar(self.menubar)

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

    def retranslateUi(self, login_MainWindow):
        _translate = QtCore.QCoreApplication.translate
        login_MainWindow.setWindowTitle(_translate("login_MainWindow", "MainWindow"))
        self.label_3.setText(_translate("login_MainWindow", "欢迎使用 XXXX 软件"))
        self.label_2.setText(_translate("login_MainWindow", "密码:"))
        self.label.setText(_translate("login_MainWindow", "管理员:"))
        self.lineEdit_2.setText(_translate("login_MainWindow", "帅哥"))
        self.pushButton.setText(_translate("login_MainWindow", "登录"))

3 登录界面和界面跳转完整代码

下面是登录界面和跳转界面的完整代码 login_mian.py :(跳转的界面 是我的上一篇博客使用PYQT5打开电脑摄像头并进行拍照_暂未成功人士!的博客-CSDN博客,具体可以查看我上一篇博文)

#self.pushButton.setShortcut(_translate("MainWindow", "enter")) #设置快捷键
import sys

from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWidgets import QApplication, QMainWindow
from PyQt5.QtCore import QTimer
from PyQt5.QtGui import QImage, QPixmap, QKeyEvent

from PyQt5.QtWidgets import QMessageBox
from login import Ui_login_MainWindow
from open_camera_main import *
from PyQt5.QtCore import Qt


class login_window(QtWidgets.QMainWindow, Ui_login_MainWindow):
    def __init__(self):
        super(login_window, self).__init__()
        self.setupUi(self)  # 创建窗体对象
        self.init()
        self.admin = "帅哥"
        self.Password = "000"

    def init(self):
        self.pushButton.clicked.connect(self.login_button) #连接槽

    def login_button(self):
        if self.lineEdit.text()=="":
            QMessageBox.warning(self, '警告', '密码不能为空,请输入!')
            return None

        # if  self.password == self.lineEdit.text():
        if (self.lineEdit.text()== self.Password) and self.lineEdit_2.text()== self.admin:
            # Ui_Main = Open_Camera()  # 生成主窗口的实例
            # 1打开新窗口
            Ui_Main.show()
            # 2关闭本窗口
            self.close()
        else:
            QMessageBox.critical(self, '错误', '密码错误!')
            self.lineEdit.clear()
            return None


if __name__ == '__main__':
    from PyQt5 import QtCore
    QtCore.QCoreApplication.setAttribute(QtCore.Qt.AA_EnableHighDpiScaling)#自适应分辨率

    app = QtWidgets.QApplication(sys.argv)
    window = login_window()
    Ui_Main = Open_Camera()# 生成主窗口的实例
    window.show()

    sys.exit(app.exec_())

4 跳转界面代码函数和优化界面代码

(1)界面跳转主要添加的代码为下面图中的  <1> <2> 步骤中的部分:

pycharm已有ui界面怎么实现登录,python,图像处理,机器学习,opencv,pycharm

 (2)登录按钮快捷键设计,即按键盘  <enter>  键就可进行登录跳转。

self.pushButton.setShortcut(_translate("login_MainWindow", "Enter")) #设置快捷键

添加上面的代码到 login.py 文件中的最下方即可:

pycharm已有ui界面怎么实现登录,python,图像处理,机器学习,opencv,pycharm

或者在设计界面上的右面添加按键的快捷方式,如下图

pycharm已有ui界面怎么实现登录,python,图像处理,机器学习,opencv,pycharm

 (3)注意两个界面的函数不能一样,因为一般没有更改的用PyUIC直接生成的.py文件的函数名是一样的,要进行更改。

pycharm已有ui界面怎么实现登录,python,图像处理,机器学习,opencv,pycharm

5 最终效果

 本篇博文和上一篇博文使用PYQT5打开电脑摄像头并进行拍照_暂未成功人士!的博客-CSDN博客这两篇结合在一起就可达到下面的效果:

pycharm已有ui界面怎么实现登录,python,图像处理,机器学习,opencv,pycharm

点击登录后的界面

pycharm已有ui界面怎么实现登录,python,图像处理,机器学习,opencv,pycharm文章来源地址https://www.toymoban.com/news/detail-785900.html

到了这里,关于使用PYQT5设计登录界面并实现界面跳转的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 界面开发(3)--- PyQt5用户登录界面连接数据库

    界面开发(3)--- PyQt5用户登录界面连接数据库

    为了实现用户登录界面的登录功能,我们必须建立一个数据库,并把账号和对应的密码,存储到数据库中。如果输入的账号和密码与数据库中的一致,那我们就允许用户登录,进入新的界面。 上篇文章介绍了如何使用PyQt5制作用户登录界面,这篇文章在此基础上展开,建立简

    2024年02月05日
    浏览(15)
  • PyQt5使用QtDesigner实现多界面切换程序

    PyQt5使用QtDesigner实现多界面切换程序

    一、首先要安装QtDesigner         具体安装步骤在此不做赘述,若是有需要的小伙伴可以去找一找教程。 二、简单介绍 QtDesigner         各位伙伴安装完成打开之后的界面类似如下图(Windows版本),图片中已经对各个区域及其作用进行简单介绍,具体用法会在下面继续讲解。

    2024年02月02日
    浏览(28)
  • pyQt界面制作(登录+跳转页面)

    pyQt界面制作(登录+跳转页面)

    首先打开Qt-D esigner,选择Widget,它和Main Window的区别在于:Main Window有工具栏菜单栏状态栏等,而Widget就适合做个简单的登录界面。如下图:   首先如下列图,在这里可以设置标题为登录,然后插入一个logo图片,也可以给字体标题设置大小样式等。 接下来输入框都是用Line Edit,

    2024年01月23日
    浏览(8)
  • python中的yolov5结合PyQt5,使用QT designer设计界面没正确启动的解决方法

    python中的yolov5结合PyQt5,使用QT designer设计界面没正确启动的解决方法

    一、窗体设计test: 默认你已经设计好了窗体后: 这时你需要的是保存生成的untitle.ui到某个文件夹下,然后在命令行中奖.ui转换为.py(,通过​​pyqt5​​​提供的转换工具,将​​ui​​​文件转换成​​python​​的代码) 或者使用在PyCharm中安装的工具: 然后你会看到mai

    2024年02月07日
    浏览(17)
  • 实习记录(5)——PyQT5界面设计及交互

    实习记录(5)——PyQT5界面设计及交互

    首先按照甲方PPT上给的界面做了,在写内部逻辑的时候发现有不少问题,没考虑到使用者的感受,甚至我觉得根本用不了。于是我和小哥讨论了一下之后,我按照我的想法做了一个新的页面出来,能实现需求的同时,让使用的人体验更好也更直观。 昨天安装成功了PyQT5,今天

    2023年04月24日
    浏览(9)
  • pycharm安装使用pyQt5

    pycharm安装使用pyQt5

    打开File-settings-Tools-External Tools Tools-External Tools-QtDesigner 保存一下就会在工程中生成untitled.ui文件 此时需要将 untitled.ui 文件转换为.py文件,方便pycharm查阅,右键选择External Tools,选择pyuic ,将其转换,转换后可以在左侧看见 untitled.py 生成的文件不能显示,需要调用

    2024年02月13日
    浏览(12)
  • Yolov5(v5.0) + pyqt5界面设计

    Yolov5(v5.0) + pyqt5界面设计

     2.1 添加QtDesigner  Qt Designer 是通过拖拽的方式放置控件,并实时查看控件效果进行快速UI设计 位置 内容 name 可以随便命名,只要便于记忆就可以,本次采取通用命名:Qt Designer Program designer.exe路径,一般在python中.Librarybindesigner.exe Arguments 固定格式,直接复制也可: $FileDir

    2024年04月15日
    浏览(10)
  • PyQt5下界面设计, 无边框加阴影界面, 鼠标左键移动事件

    PyQt5下界面设计, 无边框加阴影界面, 鼠标左键移动事件

            本人小白, 网罗各个网页与资源学习总结的内容, 设置界面无边框且留有阴影, 且鼠标左键可以拖动界面的方法.         首先我们寻找一个模板进行学习演示, 例如腾讯会议的界面:         本人会仿照这个界面进行演示说明, 包括各种样式(你看到就是赚到)      

    2023年04月09日
    浏览(8)
  • 界面开发(2)--- 使用PyQt5制作用户登陆界面

    界面开发(2)--- 使用PyQt5制作用户登陆界面

    上篇文章已经介绍了如何配置PyQt5环境,这篇文章在此基础上展开,主要记录一下如何使用 PyQt5 制作用户登陆界面,并对一些基础操作进行介绍。 下面是具体步骤,一起来看看吧! 1. 打开 Pycharm 中的 Qt Designer 工具。 2. 选择Main Window模式,创建界面窗口。 3. 移除菜单栏和状态

    2024年02月05日
    浏览(12)
  • PyQt5桌面应用开发(21):界面设计结果自动测试(二)

    PyQt5桌面应用开发(21):界面设计结果自动测试(二)

    PyQt5桌面应用开发(1):需求分析 PyQt5桌面应用开发(2):事件循环 PyQt5桌面应用开发(3):并行设计 PyQt5桌面应用开发(4):界面设计 PyQt5桌面应用开发(5):对话框 PyQt5桌面应用开发(6):文件对话框 PyQt5桌面应用开发(7):文本编辑+语法高亮与行号 PyQt5桌面应用开

    2024年02月09日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包