pyqt5使用按钮进行界面的跳转方法


Posted in Python onJune 19, 2019

简介

进行按钮进行界面的跳转,我这里面我介绍两种,一种是没有使用Qtdesigner的代码,另一种是使用Qtdesigner的代码

代码1

import sys
from PyQt5.QtWidgets import QMainWindow, QPushButton, QApplication
 
 
class First(QMainWindow):
 
  def __init__(self):
    super().__init__()
 
    self.initUI()
 
  def initUI(self):
    self.btn = QPushButton("Button", self)
    self.btn.move(30, 50)
    
 
 
    self.setGeometry(300, 300, 500, 500)
    self.setWindowTitle('Event sender')
    self.show()
 
class Second(QMainWindow):
  def __init__(self):
    super().__init__()
 
    self.initUI()
 
  def initUI(self):
    self.setGeometry(300, 300, 290, 150)
    self.setWindowTitle('Get sender')
 
 
if __name__ == '__main__':
  app = QApplication(sys.argv)
  a = First()
  b = Second()
  a.show()
  a.btn.clicked.connect(b.show)
  sys.exit(app.exec_())

代码2

下面的代码使用了Qtdesigner的代码

from PyQt5 import QtCore, QtGui, QtWidgets
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QWidget, QLabel,\
                     QPushButton, QLineEdit, QMenuBar, QStatusBar
from PyQt5.QtCore import *
 
class FirstWindow(QWidget):
 
  def __init__(self, parent=None):
    # super这个用法是调用父类的构造函数
    # parent=None表示默认没有父Widget,如果指定父亲Widget,则调用之
    super(FirstWindow, self).__init__(parent)
    self.setGeometry(500, 500, 500, 500)
    self.setWindowTitle('显示')
 
    self.btn = QPushButton(self)
    self.btn.setText('标定')
    self.btn.move(150, 50)
 
 
#下面的一部分是Qtdesigner的代码
 
class Ui_MainWindow(object):
  def setupUi(self, MainWindow):
    MainWindow.setObjectName("MainWindow")
    MainWindow.resize(624, 479)
    self.centralwidget = QtWidgets.QWidget(MainWindow)
    self.centralwidget.setObjectName("centralwidget")
    self.label = QtWidgets.QLabel(self.centralwidget)
    self.label.setGeometry(QtCore.QRect(190, 130, 51, 31))
    self.label.setObjectName("label")
    self.pushButton = QtWidgets.QPushButton(self.centralwidget)
    self.pushButton.setGeometry(QtCore.QRect(330, 260, 75, 23))
    self.pushButton.setObjectName("pushButton")
    self.lineEdit = QtWidgets.QLineEdit(self.centralwidget)
    self.lineEdit.setGeometry(QtCore.QRect(280, 130, 151, 21))
    self.lineEdit.setObjectName("lineEdit")
    self.label_2 = QtWidgets.QLabel(self.centralwidget)
    self.label_2.setGeometry(QtCore.QRect(190, 180, 51, 31))
    self.label_2.setObjectName("label_2")
    self.lineEdit_2 = QtWidgets.QLineEdit(self.centralwidget)
    self.lineEdit_2.setGeometry(QtCore.QRect(280, 190, 151, 21))
    self.lineEdit_2.setObjectName("lineEdit_2")
    self.pushButton_2 = QtWidgets.QPushButton(self.centralwidget)
    self.pushButton_2.setGeometry(QtCore.QRect(200, 260, 75, 23))
    self.pushButton_2.setObjectName("pushButton_2")
    MainWindow.setCentralWidget(self.centralwidget)
    self.menubar = QtWidgets.QMenuBar(MainWindow)
    self.menubar.setGeometry(QtCore.QRect(0, 0, 624, 23))
    self.menubar.setObjectName("menubar")
    MainWindow.setMenuBar(self.menubar)
    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.translate
    MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
    self.label.setText(_translate("MainWindow", "  长"))
    self.pushButton.setText(_translate("MainWindow", "确定"))
    self.label_2.setText(_translate("MainWindow", "  宽"))
    self.pushButton_2.setText(_translate("MainWindow", "取消"))
 
if __name__ == "__main__":
  app = QApplication(sys.argv)
  MainWindow = QMainWindow()
  ui = Ui_MainWindow()
  ui.setupUi(MainWindow)
 
  ex = FirstWindow()
  ex.btn.clicked.connect(MainWindow.show)
  ex.show()
 
  sys.exit(app.exec_())

以上这篇pyqt5使用按钮进行界面的跳转方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Django返回json数据用法示例
Sep 18 Python
Python迭代器和生成器定义与用法示例
Feb 10 Python
详谈在flask中使用jsonify和json.dumps的区别
Mar 26 Python
python 请求服务器的实现代码(http请求和https请求)
May 25 Python
python 筛选数据集中列中value长度大于20的数据集方法
Jun 14 Python
python提取具有某种特定字符串的行数据方法
Dec 11 Python
使用Python将Mysql的查询数据导出到文件的方法
Feb 25 Python
python实现字符串加密 生成唯一固定长度字符串
Mar 22 Python
基于python实现自动化办公学习笔记(CSV、word、Excel、PPT)
Aug 06 Python
Tensorflow 自定义loss的情况下初始化部分变量方式
Jan 06 Python
matplotlib jupyter notebook 图像可视化 plt show操作
Apr 24 Python
python 实时调取摄像头的示例代码
Nov 25 Python
Python发展史及网络爬虫
Jun 19 #Python
Python QQBot库的QQ聊天机器人
Jun 19 #Python
python替换字符串中的子串图文步骤
Jun 19 #Python
python实现QQ批量登录功能
Jun 19 #Python
python里 super类的工作原理详解
Jun 19 #Python
Python创建或生成列表的操作方法
Jun 19 #Python
Django REST framework 分页的实现代码
Jun 19 #Python
You might like
用Flash图形化数据(二)
2006/10/09 PHP
在线增减.htpasswd内的用户
2006/10/09 PHP
php mssql 分页SQL语句优化 持续影响
2009/04/26 PHP
PHP获取php,mysql,apche的版本信息示例代码
2014/01/16 PHP
2014最热门的24个php类库汇总
2014/12/18 PHP
DEDECMS首页调用图片集里的多张图片
2015/06/05 PHP
PHP解压tar.gz格式文件的方法
2016/02/14 PHP
图片连续滚动代码[兼容IE/firefox]
2009/06/11 Javascript
Pro JavaScript Techniques学习笔记
2010/12/28 Javascript
Prototype源码浅析 String部分(四)之补充
2012/01/16 Javascript
JavaScript表达式:URL 协议介绍
2013/03/10 Javascript
jQuery+slidereveal实现的面板滑动侧边展出效果
2015/03/14 Javascript
jquery轮播的实现方式 附完整实例
2016/07/28 Javascript
利用js编写响应式侧边栏
2016/09/17 Javascript
微信小程序 五星评分(包括半颗星评分)实例代码
2016/12/14 Javascript
JavaScript 栈的详解及实例代码
2017/01/22 Javascript
浅谈在vue项目中如何定义全局变量和全局函数
2017/10/24 Javascript
浅谈 Vue 项目优化的方法
2017/12/16 Javascript
vue页面离开后执行函数的实例
2018/03/13 Javascript
js中let能否完全替代IIFE
2019/06/15 Javascript
vue实现手机端省市区区域选择
2019/09/27 Javascript
Vue自定义表单内容检查rules实例
2020/10/30 Javascript
对Python 文件夹遍历和文件查找的实例讲解
2018/04/26 Python
Python学习小技巧总结
2018/06/10 Python
jupyter notebook读取/导出文件/图片实例
2020/04/16 Python
Django如何实现密码错误报错提醒
2020/09/04 Python
Python调用Redis的示例代码
2020/11/24 Python
Baby Tulai澳大利亚:美国婴儿背带品牌
2018/10/15 全球购物
Calphalon美国官网:美国顶级锅具品牌
2020/02/05 全球购物
公务员个人自我评价分享
2013/11/06 职场文书
2014新年元旦活动策划方案
2014/02/18 职场文书
班级活动总结格式
2014/08/30 职场文书
晋江市人民政府党组群众路线教育实践活动整改方案
2014/10/25 职场文书
风之谷观后感
2015/06/11 职场文书
2016教师六五普法学习心得体会
2016/01/21 职场文书
Python面向对象之内置函数相关知识总结
2021/06/24 Python