PyQt5制作一个简单的登录界面

这篇具有很好参考价值的文章主要介绍了PyQt5制作一个简单的登录界面。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

最近在学习GUI设计,分享做的一些小项目。
这篇文我们讲一下如何制作一个简单的登录界面。

一、效果图

如下:
PyQt5制作一个简单的登录界面

二、简述制作过程:

1、QtDesigner里绘制UI界面并设置属性
PyQt5制作一个简单的登录界面布局根据个人喜好,部件颜色、字体、背景属性在styleSheet里设置。

2、材料转换(将.ui文件转.py,.qrc文件转_rc.py)
PyQt5制作一个简单的登录界面通过PyUIC和PyRcc即可完成。

这个没安装的可以参考这篇文章:
Pycharm 中配置pyqt5.designer,pyuic,pyrcc

3、对部件自定义函数并关联
源码注释的很详细,有不理解的地方欢迎在文末加我的vx讨论。

三、源码及材料:

1、源码:

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

# Form implementation generated from reading ui file 'denglujiemian2.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
from PyQt5.QtWidgets import QMessageBox
from PyQt5.QtGui import QPixmap,QIcon

class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(708, 761)
        MainWindow.setStyleSheet("")
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setStyleSheet("background-image: url(:/png/beijing1.png);")
        self.centralwidget.setObjectName("centralwidget")
#################################################################################################
# pushButton的属性
#################################################################################################
        self.pushButton = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton.setGeometry(QtCore.QRect(540, 540, 131, 51))
        self.pushButton.setStyleSheet("font: 9pt \"造字工房悦黑体验版细体\";\n"
"image: url(:/ico/login.ico);\n"
"background-color: rgb(255, 255, 0);\n"
"color: rgb(255, 0, 0);")
        self.pushButton.setObjectName("pushButton")
        self.pushButton.setIcon(QIcon(QPixmap("login.ico")))
#################################################################################################
#pushButton_2的属性
#################################################################################################
        self.pushButton_2 = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton_2.setGeometry(QtCore.QRect(540, 610, 131, 51))
        self.pushButton_2.setStyleSheet("font: 9pt \"造字工房悦黑体验版细体\";\n"
"image: url(:/ico/exit.ico);\n"
"color: rgb(255, 0, 0);\n"
"background-color: rgb(255, 255, 0);")
        self.pushButton_2.setObjectName("pushButton_2")
        self.pushButton_2.setIcon(QIcon(QPixmap("exit.ico")))
#################################################################################################
# label的属性
#################################################################################################
        self.label = QtWidgets.QLabel(self.centralwidget)
        self.label.setGeometry(QtCore.QRect(450, 389, 51, 31))
        self.label.setStyleSheet("font: 9pt \"造字工房悦黑体验版细体\";\n"
"color: rgb(255, 255, 0);")
        self.label.setObjectName("label")
#################################################################################################
#label_2的属性
#################################################################################################
        self.label_2 = QtWidgets.QLabel(self.centralwidget)
        self.label_2.setGeometry(QtCore.QRect(460, 440, 41, 21))
        self.label_2.setStyleSheet("font: 9pt \"造字工房悦黑体验版细体\";\n"
"color: rgb(255, 255, 0);")
        self.label_2.setObjectName("label_2")
#################################################################################################
#lineEdit的属性
#################################################################################################
        self.lineEdit = QtWidgets.QLineEdit(self.centralwidget)
        self.lineEdit.setGeometry(QtCore.QRect(510, 390, 181, 31))
        self.lineEdit.setStyleSheet("color: rgb(255, 255, 0);")
        self.lineEdit.setObjectName("lineEdit")
#################################################################################################
# lineEdit_2的属性
#################################################################################################
        self.lineEdit_2 = QtWidgets.QLineEdit(self.centralwidget)
        self.lineEdit_2.setGeometry(QtCore.QRect(510, 430, 181, 31))
        self.lineEdit_2.setStyleSheet("color: rgb(255, 255, 0);")
        self.lineEdit_2.setObjectName("lineEdit_2")
        self.lineEdit_2.setEchoMode(QtWidgets.QLineEdit.Password)
        self.lineEdit_2.setValidator(QtGui.QIntValidator(10000000, 99999999))
#################################################################################################
# radioButton的属性
#################################################################################################
        self.radioButton = QtWidgets.QRadioButton(self.centralwidget)
        self.radioButton.setGeometry(QtCore.QRect(480, 480, 81, 19))
        self.radioButton.setStyleSheet("color: rgb(255, 255, 0);\n"
"font: 9pt \"造字工房悦黑体验版细体\";")
        self.radioButton.setObjectName("radioButton")
        self.radioButton.setChecked(True)
#################################################################################################
#radioButton_2的属性
#################################################################################################
        self.radioButton_2 = QtWidgets.QRadioButton(self.centralwidget)
        self.radioButton_2.setGeometry(QtCore.QRect(590, 480, 91, 19))
        self.radioButton_2.setStyleSheet("font: 9pt \"造字工房悦黑体验版细体\";\n"
"color: rgb(255, 255, 0);")
        self.radioButton_2.setObjectName("radioButton_2")
#################################################################################################
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 708, 26))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)
#################################################################################################
#将pushButton和pushButton_2通过clicked连接自定义函数login()
#################################################################################################
        self.retranslateUi(MainWindow)
        self.pushButton.clicked.connect(self.login)
        self.pushButton_2.clicked.connect(MainWindow.close)
#################################################################################################
#将radioButton和radioButton_2通过clicked连接自定义函数select()
#################################################################################################
        self.radioButton.toggled.connect(self.select)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
        self.radioButton_2.clicked.connect(MainWindow.show)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
#################################################################################################
#自定义函数,点击登录时弹出一个提示窗口,显示用户名和密码
#################################################################################################
    def login(self):
        from PyQt5.QtWidgets import QMessageBox
        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.pushButton.setText(_translate("MainWindow", "登录"))
        self.pushButton_2.setText(_translate("MainWindow", "退出"))
        self.label.setText(_translate("MainWindow", "用户名:"))
        self.label_2.setText(_translate("MainWindow", "密码:"))
        self.radioButton.setText(_translate("MainWindow", "管理员"))
        self.radioButton_2.setText(_translate("MainWindow", "普通用户"))
#################################################################################################
#窗口函数
#################################################################################################
import dlbj1_rc
import sys
if __name__ == '__main__':
   app = QtWidgets.QApplication(sys.argv)
   MainWindow = QtWidgets.QMainWindow() # 创建窗体对象
   ui = Ui_MainWindow() # 创建PyQt设计的窗体对象
   ui.setupUi(MainWindow) # 调用PyQt窗体的方法对窗体对象进行初始化设置
   MainWindow.show() # 显示窗体
   sys.exit(app.exec_()) # 程序关闭时退出进程

2、图片素材:

百度网盘链接:
图片素材
提取码:1024

喜欢的话记得三连哦,欢迎评论。文章来源地址https://www.toymoban.com/news/detail-434905.html

到了这里,关于PyQt5制作一个简单的登录界面的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

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

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

    2024年02月05日
    浏览(38)
  • HTML和CSS配合制作一个简单的登录界面

    这是一个CSS样式表,用于为网页中的HTML元素设置样式。接下来我会逐句解释每个选择器和样式的作用。 *{ box-sizing: border-box; } :这行代码将所有HTML元素的盒模型设置为 border-box ,使元素的宽高包括内容、内边距和边框,而不仅仅是内容。 body{ font-family: Arial, Helvetica, sans-ser

    2024年02月12日
    浏览(32)
  • 制作一个串口助手 | python + pyqt5

    目录 一、背景 1.1、开发流程图 二、前提 2.1、关于环境 2.2、关于源码 三、步骤 3.1、使用pyqt创建一个.ui界面并生成.py文件 3.2、创建两个.py文件,一个用来继承ui界面生成的.py类,一个用来实现各种功能 3.3、各个功能代码 3.3.1、打开串口 3.3.2、关闭串口 3.3.3、获取串口号 3.

    2024年02月05日
    浏览(71)
  • RAMMAP(运行内存清理工具)自动释放内存,并利用pyqt5制作图形界面

    上一篇文章用python制作了一个自动清理内存的程序,利用cmd端口调用Rammap,不过只是做了一个托盘图标,这回用pyqt5做一个简单的图形界面,并实现对自动清理模式的一些设置 首先利用pyqt5工具qt designer生成UI界面,这里命名为F_UI.ui(并利用信号/槽编辑器将滑动条和微调框绑

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

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

    2024年01月23日
    浏览(29)
  • 【python】用PyQt5教你制作简单的水果抽奖机

    水果机模拟器的介绍 制作水果机的步骤 水果机的UI设计  水果机的代码 UI内置代码   用代码对UI进行修饰  窗体属性 启动游戏   Qtime的timeout事件  窗体加载 总结  网络上对的介绍:水果机最为常见的是在街机厅中见到的,以新颖的水果作为游戏主题,融合了博彩类游戏元

    2023年04月08日
    浏览(26)
  • 【Python】pyqt5入门教程之第一个UI界面

    1.pyqt5工具安装 (1)使用pip工具安装PyQt5工具: (2)安装Qt Designer图形界面开发工具: 安装完成后所在路径 (3)安装QtDesigner 安装完成后所在路径 designer.exe路径 启动QtDesigner 2.第一个QT窗口程序 Pycharm配置 找到py文件,右键External Tool — QTDesigner—就可以启动 QTDesigner .ui文件转换

    2024年02月15日
    浏览(39)
  • PyQt5利用Qt Designer制作一个可以拖动获取文件信息的页面

    前言 本篇在讲什么 用pyqt5制作一个简单的程序,拖动文件或脚本可以读取文件信息 本篇适合什么 适合 初学PyQt5 的小白 本篇需要什么 对 Python 语法有简单认知 对 Qt 有简单认知 依赖 Pycharm 编辑器 本篇的特色 具有全流程的 图文教学 重实践,轻理论,快速上手 提供全流程的

    2024年01月15日
    浏览(53)
  • 最新版本VSCode配置Python、PyQt5、QtDesigner环境并创建一个ui界面测试

    参考链接:最新版本VSCode配置Python、PyQt5、QtDesigner环境并创建一个ui界面测试 一、安装Python3 PyQt5所支持的python版本是从3.5开始的,因此安装的Python3版本必须大于3.5。 我安装的位置是C:PythonPython38。 参见真小白入门Pyhton的安装 二、安装PyQt5以及PyQt5-tools(这里面就有designer了

    2024年02月08日
    浏览(38)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包