目录

一、登录界面长下面这样,由qt designer设计 login.py

二、登录界面 逻辑代码loginLogic.py

三、主界面comsumeType.py

四、主界面逻辑代码comsumeTypeLogic.py

五、登录界面跳转至主界面

六、主界面回到登录界面


一、登录界面长下面这样,由qt designer设计 login.py

# -*- 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, QtWidgetsclass Ui_MainWindow(object):def setupUi(self, MainWindow):MainWindow.setObjectName("MainWindow")MainWindow.resize(416, 271)MainWindow.setMinimumSize(QtCore.QSize(416, 271))MainWindow.setMaximumSize(QtCore.QSize(416, 271))self.centralwidget = QtWidgets.QWidget(MainWindow)self.centralwidget.setObjectName("centralwidget")self.label = QtWidgets.QLabel(self.centralwidget)self.label.setGeometry(QtCore.QRect(70, 40, 291, 31))font = QtGui.QFont()font.setPointSize(17)font.setBold(True)font.setWeight(75)self.label.setFont(font)self.label.setAlignment(QtCore.Qt.AlignCenter)self.label.setObjectName("label")self.label_2 = QtWidgets.QLabel(self.centralwidget)self.label_2.setGeometry(QtCore.QRect(80, 110, 101, 21))font = QtGui.QFont()font.setPointSize(11)self.label_2.setFont(font)self.label_2.setObjectName("label_2")self.label_3 = QtWidgets.QLabel(self.centralwidget)self.label_3.setGeometry(QtCore.QRect(80, 150, 61, 21))font = QtGui.QFont()font.setPointSize(11)self.label_3.setFont(font)self.label_3.setObjectName("label_3")self.lineEdit = QtWidgets.QLineEdit(self.centralwidget)self.lineEdit.setGeometry(QtCore.QRect(160, 110, 171, 20))self.lineEdit.setObjectName("lineEdit")self.lineEdit_2 = QtWidgets.QLineEdit(self.centralwidget)self.lineEdit_2.setGeometry(QtCore.QRect(160, 150, 171, 20))self.lineEdit_2.setObjectName("lineEdit_2")self.pushButton = QtWidgets.QPushButton(self.centralwidget)self.pushButton.setGeometry(QtCore.QRect(100, 200, 81, 31))font = QtGui.QFont()font.setPointSize(11)self.pushButton.setFont(font)self.pushButton.setObjectName("pushButton")self.pushButton_2 = QtWidgets.QPushButton(self.centralwidget)self.pushButton_2.setGeometry(QtCore.QRect(240, 200, 81, 31))font = QtGui.QFont()font.setPointSize(11)self.pushButton_2.setFont(font)self.pushButton_2.setObjectName("pushButton_2")MainWindow.setCentralWidget(self.centralwidget)self.statusbar = QtWidgets.QStatusBar(MainWindow)self.statusbar.setObjectName("statusbar")MainWindow.setStatusBar(self.statusbar)self.retranslateUi(MainWindow)QtCore.QMetaObject.connectSlotsByName(MainWindow)def retranslateUi(self, MainWindow):_translate = QtCore.QCoreApplication.translateMainWindow.setWindowTitle(_translate("MainWindow", "欢迎"))self.label.setText(_translate("MainWindow", "管理系统"))self.label_2.setText(_translate("MainWindow", "用户名:"))self.label_3.setText(_translate("MainWindow", "密  码:"))self.pushButton.setText(_translate("MainWindow", "登录"))self.pushButton_2.setText(_translate("MainWindow", "注册"))if __name__ == "__main__":import sysapp = QtWidgets.QApplication(sys.argv)MainWindow = QtWidgets.QMainWindow()ui = Ui_MainWindow()ui.setupUi(MainWindow)MainWindow.show()sys.exit(app.exec_())

二、登录界面 逻辑代码loginLogic.py

from login import Ui_MainWindow as loginUI
from comsumeTypeLogic import comsumeTypeLogic as CSTLogicfrom PyQt5.QtWidgets import QMessageBox,QMainWindow,QApplication
from PyQt5.QtGui import QIcon
from PyQt5 import QtCoreimport sysclass loginLogic(QMainWindow,loginUI):def __init__(self):super(loginLogic, self).__init__()self.setupUi(self)self.setWindowIcon(QIcon("datas/icon.ico"))self.CSTLogic = CSTLogic()self.run()# 按钮绑定事件def run(self):# 登录self.pushButton.clicked.connect(self.login_)# 注册self.pushButton_2.clicked.connect(self.register_)# 登录事件def login_(self):pass# 注册事件def register_(self):pass# 重新启动界面def reshow(self):self.show()# 运行界面循环
def main_():app = QApplication(sys.argv)login_ = loginLogic()login_.show()sys.exit(app.exec_())if __name__ == '__main__':main_()

三、主界面comsumeType.py

四、主界面逻辑代码comsumeTypeLogic.py

from comsumeType import Ui_MainWindow as CSTUIfrom PyQt5.QtWidgets import QMessageBox,QMainWindow,QApplication
from PyQt5.QtGui import QIcon
from PyQt5 import QtCoreimport sysclass comsumeTypeLogic(QMainWindow,CSTUI):returnLoginSignal = QtCore.pyqtSignal()def __init__(self):super(comsumeTypeLogic, self).__init__()self.setupUi(self)self.setWindowIcon(QIcon("datas/icon.ico"))self.run()# 按钮绑定事件def run(self):# 退出系统self.pushButton_10.clicked.connect(self.exitSystem)# 返回登录界面self.pushButton_11.clicked.connect(self.returnLogin)# 退出系统def exitSystem(self):sys.exit()# 返回登录界面def returnLogin(self):self.close()self.returnLoginSignal.emit()if __name__ == '__main__':app =QApplication(sys.argv)CSTLogic = comsumeTypeLogic()CSTLogic.show()sys.exit(app.exec_())

五、登录界面跳转至主界面

1、在登录界面逻辑代码loginLogic.py中将主界面的逻辑代码实例化

self.CSTLogic = CSTLogic()

2、登录界面逻辑代码loginLogic.py中需要跳转的位置插入以下代码

跳转到主界面同时关闭登录界面

         self.CSTLogic.show()# 登录界面关闭self.close()

六、主界面回到登录界面

1、在主界面逻辑代码comsumeTypeLogic.py中,添加信号

returnLoginSignal = QtCore.pyqtSignal()

2、在主界面逻辑代码comsumeTypeLogic.py中需要跳转到登录界面的地方触发信号并发射

 # 返回登录界面def returnLogin(self):self.close()self.returnLoginSignal.emit()

3、在登录界面逻辑代码loginLogic.py中实例化主界面逻辑代码,且将信号绑定槽函数

self.CSTLogic.show()
self.CSTLogic.returnLoginSignal.connect(self.reshow)

4、在登录界面逻辑代码loginLogic.py中编写槽函数代码

 def reshow(self):self.show()

【pyqt5学习】——登录界面跳转到主界面,登录界面关闭的情况下从主界面跳转回登录界面相关推荐

  1. 谷歌打印html界面布局方法(当一页展示不完的情况下,在新的页面展示)

    最近在写打印html 界面遇到了一些问题,一下是我们解决方案,希望对你有用. 第一个是如何强制分页.比如我们有章节性的内容的时候,在某章节结束后,下一章节另起新的一页. 第二个问题是,关联性较强的内容 ...

  2. session过期情况下ajax请求不会触发重新登录的问题

    在拦截器中添加以下逻辑 String requestType = request.getHeader("X-Requested-With");if (!StringUtils.is ...

  3. 探究莲花位主内洗髓经时,各情况下开局3怒的概率

    用大写字母对触发事件简记,用相应小写字母表示其未触发事件 A = 触发释放技能回怒 每次释放技能回怒的基础概率为25%,每70福源增加20%概率,假设后续概率与福源成线性关系 设福源为 x,则 p ( ...

  4. 算法训练营 重编码_关于如何在没有训练营的情况下学习编码的10条提示

    算法训练营 重编码 Seattle 2017. I had just attended my first team meeting at my first job as a software deve ...

  5. linux登录界面输入密码时卡住6,centos6.8(虚拟机VNC)输入正确用户名和密码仍跳回登录界面...

    1)CentOS自动更新到6.8后root无法登陆问题解决 虚拟机CentOS服务器不知道被谁更新系统到6.8后,发现在本机上即使输入正确的密码也无法登陆,发现有一些人也碰见过同样的问题,但是他们是因 ...

  6. 【Unity学习笔记】b站Unity架构课Unity3D 商业化的网络游戏架构(高级/主程级别)

    [Unity学习笔记]b站Unity架构课Unity3D 商业化的网络游戏架构(高级/主程级别) 自己跟着学完了,写了不少代码,会放在CSDN代码库,因为老师并没有提供源码,录屏也不是完全连续,所以难 ...

  7. PyQt5学习笔记02----初探Qt Designer 设计师

    网上很多教程都是纯代码,对于新手看起来就很头疼,pyqt为我们提供了Qt designer来设计窗口界面,用起来也非常方便.对于新手来说应该善用它,虽然做出来的界面不那么华丽,但至少可以做出个像样的窗 ...

  8. 【pyqt5学习】——containers相关控件(tab widget、scroll area、stack widget、tool box、MDI area、dock widget)

    目录 1.tab widget 2.scroll area 2.1 使用方法 Step1.拖入QScrollArea ​Step2.改变widget控件布局 ​Step3.设置scrollAreaWi ...

  9. 【pyqt5学习】——窗口最小化至托盘、取消任务栏图标

    目录 1.最小化至托盘 1)重写系统托盘类,设置托盘图标等属性 2)将具体的窗口放入托盘 2.取消任务栏界面图标 3.问题汇总 1)退出后托盘图标还是存在,没有消失 2)最小化后左下角会出现 窗口 3 ...

最新文章

  1. JavaScript 之 call和apply,bind 的模拟实现
  2. 从零玩转HTML5前端+跨平台开发上
  3. c语言单链表冒泡排序的步骤,急!!求c语言单链表冒泡排序的详细流程图
  4. 数据中心电池室管理之经济实用性方法的探索
  5. Android Framework常用工具及LOG调试方法
  6. 在 Wi ndows,MSComm控件在中文Wi的ndows下的通信问题与处理方法.doc
  7. ASP.NET MVC5使用AjaxHelp
  8. 中文表示什么_中文分词是个伪问题
  9. 手把手Java爬虫教学 - 1. 了解爬虫
  10. 分享一个RX8025T时钟芯片的Arduino代码
  11. windows设置定时任务(win10任务计划程序)
  12. 51单片机——LCD1602液晶屏 C语言入门编程
  13. python爬虫爬取网页壁纸图片(《底特律:变人》)
  14. 利盟 x466 双面打印问题之正反面颠倒
  15. 装X神器,让你的grafana看板变得炫酷起来
  16. 学习数据结构的意义和作用
  17. 二、对HEVC/H.265视频编解码器进行隐写的基本思路
  18. Windows——在设备和驱动器界面删除天翼云盘图标的方法
  19. svg常用元素和属性
  20. Modra Pharmaceuticals于2021 ASCO GU年会公布其转移性前列腺癌IIb期临床试验初步数据

热门文章

  1. 无聊之作 对 手游十万个为什么(神之刃) 的解包分析笔记 (游戏引擎)
  2. 浪擎产品与解决方案技术资料专区
  3. kali 重置root密码
  4. 1.什么是关系型数据库和非关系型数据库
  5. 联动 地区城市的 转载
  6. geoserver 3_「2020年3月第2周」Switch每周游报:文字冒险周
  7. 学习记录:python GoPUP获取百度指数动态数据对比看国人野性消费
  8. 渗透测试常用工具讲解
  9. 【Arma3脚本教程】一、基本介绍
  10. 青龙羊毛——酷狗大字版(教程)