Pyqt5设置返回键和跳转页面键的示例代码

例子一

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("进入页面2", self)
    self.btn.move(30, 50)

    self.setGeometry(300, 200, 500, 500)
    self.setWindowTitle('页面1')

class Second(QMainWindow):
  def __init__(self):
    super().__init__()

    self.initUI()

  def initUI(self):
    self.btn = QPushButton("进入页面3", self)
    self.btn.move(30, 50)
    self.setGeometry(300, 200, 290, 150)
    self.setWindowTitle('页面2')

class Third(QMainWindow):
  def __init__(self):
    super().__init__()

    self.initUI()

  def initUI(self):
    self.btn = QPushButton("返回页面1", self)
    self.btn.move(30, 50)

    self.btn2 = QPushButton("功能函数", self)
    self.btn2.move(30, 90)

    self.setGeometry(500, 200, 290, 350)
    self.setWindowTitle('页面3')
    self.btn2.clicked.connect(self.action)
  def action(self):
    print("这是功能函数")

if __name__ == '__main__':
  app = QApplication(sys.argv)
  a = First()
  b = Second()
  c = Third()
  a.show()
  a.btn.clicked.connect(b.show)
  a.btn.clicked.connect(a.close)
  b.btn.clicked.connect(c.show)
  b.btn.clicked.connect(b.close)
  c.btn.clicked.connect(a.show)
  c.btn.clicked.connect(c.close)
  sys.exit(app.exec_())

例子二

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('进入页面2')
    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.btn.clicked.connect(ex.close)
  ui.pushButton.clicked.connect(ex.show)
  ui.pushButton.clicked.connect(MainWindow.close)
  ex.show()
  sys.exit(app.exec_())

到此这篇关于Pyqt5设置返回键和跳转页面键的示例代码的文章就介绍到这了,更多相关Pyqt5 返回键和跳转页面键内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • PyQt5 QListWidget选择多项并返回的实例

    参考Stack Overflow Python: How to query multiple selected items in QListWidget in PyQt from PyQt5.QtGui import * from PyQt5.QtCore import * from PyQt5.QtWidgets import * listItem = ['a','b','c','d','e'] if listItem is not None and len(listItem) > 0: se

  • PyQt5实现界面(页面)跳转的示例代码

    网上关于PyQt5的教程很少,特别是界面跳转这一块儿,自己研究了半天,下来和大家分享一下 一.首先是主界面 # -*- coding: utf-8 -*- # Form implementation generated from reading ui file 'Form.ui' # # Created by: PyQt5 UI code generator 5.10.1 # # WARNING! All changes made in this file will be lost! #要注意的

  • pyqt5 实现多窗口跳转的方法

    今天在做pyqt5的多页面跳转时遇到问题,一点击button按钮,程序会崩溃.在网上查了下,应该是当窗口A调用窗口B的时候,两个窗口不能是同一类型.我写的时候把A.B同时写成了QWidget.把窗口B改成Dialog类型后,就可以成功调用了. 具体代码不放了,写个大概的模板如下: class A(QWidget): def __init__(self): ...省略... self.btn = QPushButton('跳转按钮') def initUI(self): pass class B(

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

    简介 进行按钮进行界面的跳转,我这里面我介绍两种,一种是没有使用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.

  • Pyqt5 实现跳转界面并关闭当前界面的方法

    网上大部分教程都写的直接关闭界面,我摸索出来一个方法:同时绑定两个事件 例: #自己方法 self.registerButton.clicked.connect(self.register_re) #关闭界面 self.registerButton.clicked.connect(login.close) 代码顺序代表进行顺序,上例先运行自己函数,再关闭当前窗口. 以上这篇Pyqt5 实现跳转界面并关闭当前界面的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • Pyqt5设置返回键和跳转页面键的示例代码

    例子一 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("进入页面2", self) self.btn.move(30, 50) self.s

  • vue移动端项目中如何实现页面缓存的示例代码

    背景 在移动端中,页面跳转之间的缓存是必备的一个需求. 例如:首页=>列表页=>详情页. 从首页进入列表页,列表页需要刷新,而从详情页返回列表页,列表页则需要保持页面缓存. 对于首页,一般我们都会让其一直保持缓存的状态. 对于详情页,不管从哪个入口进入,都会让其重新刷新. 实现思路 说到页面缓存,在vue中那就不得不提keep-alive组件了,keep-alive提供了路由缓存功能,本文主要基于它和vuex来实现应用里的页面跳转缓存. vuex里维护一个数组cachePages,用以保存当前

  • django js实现部分页面刷新的示例代码

    例子中,我用的是显示机器上的进程信息的表格,获取不同的机器的进程信息时,更新这个展示信息的表格,如下: 当我在输入框中输入ip时,我希望只是更新这个表格,页面其他部分不变,实现方式如下: 1.在原页面中设置这个表格的id为pstable <table class="table table-striped" id="pstable"> <thead> <tr> <th>user</th> <th>

  • mybatis中insert主键ID获取和多参数传递的示例代码

    一.插入数据主键ID获取 一般我们在做业务开发时,经常会遇到插入一条数据并使用到插入数据的ID情况.如果先插入在查询的话需要多一次sql查询,未免效率太低.因此mybatis也有提供插入数据并返回主键ID的方式.如下 1.Insert/update 1.1.属性解释 keyProperty selectKey 语句结果应该被设置的目标属性.如果希望得到多个生成的列,也可以是逗号分隔的属性名称列表. resultType 结果的类型.MyBatis 通常可以推算出来,但是为了更加确定写上也不会有什

  • Pyqt5 关于流式布局和滚动条的综合使用示例代码

    流式布局 所谓流式布局指的是容器中的元素像流水一样,是可以浮动的,当元素一行或者一列占满的时候,它会自动流入到下一行或者下一列. pyqt5流式布局 pyqt中采用流式布局的方法原理是,通过contentsMargins获取到子元素距离布局的上下左右宽度,然后我们将所有子元素进行遍历,如果它加上边距可以在一行放入的话,那么就放在一行内,如果不能,就放入到下一行,具体代码如下: m = self.contentsMargins() effective_rect = rect.adjusted(+m

  • keep-Alive搭配vue-router实现缓存页面效果的示例代码

    Vue工程中有些页面需要有缓存.这个功能通过keep-alive组件实现,keep-alive组件可以使被包含的组件保留状态,或避免重新渲染. 在routes.js中定义路由,在路由中定义元信息(meta字段),需要缓存的页面就需要在meta对象中定义一个字段,这里设置为keepAlive,设置为true,反之,则不缓存. { path: '/a', component: () => import('@/pages/A'), meta: { title:'A', keepAlive: true

  • C#实现PDF页面合并的示例代码

    目录 程序环境 代码示例 1.从两个PDF文档页面实现页面合并 2.在同一个PDF文档实现页面合并 本文以C#及vb.net代码为例介绍如何来实现合并PDF页面内容.本文中的合并并非将两个文档简单合并为一个文档,而是将多个页面内容合并到一个页面,目的是减少页面上的空白区域,使页面布局更为紧凑.合理.下面,将分别从两个示例来展示合并,即: 从两个PDF文档页面实现页面合并 在同一个PDF文档实现页面合并 程序环境 方法1 在程序中引入Spire.Pdf.dll文件:将 Free Spire.PDF

  • Android 实现无网络页面切换的示例代码

    本文介绍了Android 实现无网络页面切换的示例代码,分享给大家,具体如下: 实现思路 需求是在无网络的时候显示特定的页面,想到要替换页面的地方,大多都是recyclerview或者第三方recyclerview这种需要显示数据的地方,因此决定替换掉页面中所有的recyclerview为无网络页面 实现过程 1 在BaseActivity中,当加载布局成功以后,通过id找到要替换的view,通过indexOfChild()方法,找到要替换的view的位置,再通过remove和add view来

  • vue实现微信公众号h5跳转小程序的示例代码第1/3页

    目录 项目概述 涉及知识点 实现 实现容器 computed 实现分页 项目概述 实现类似图中红色框框选中可以左右滑动的组件,点击可以跳转到对应的小程序页面. 涉及知识点 computed 实现分页 开放标签 wx-open-launch-weapp 使用 实现 实现容器 首先我们来实现两行可以左右滑动的容器. 这边为了省事,我是选择了 vue-awesome-swiper@2.6.7: npm i vue-awesome-swiper@2.6.7 -S main.js 引入 import Vu

  • ReactNative页面跳转Navigator实现的示例代码

    本文介绍了ReactNative页面跳转Navigator,分享给大家.具体如下: Navigator即导航器,通过导航器我们可以实现应用在不同的页面之间进行跳转. 导航器会建立一个路由栈,用来弹出,推入或者替换路由状态.该路由栈相当于Android原生中使用的任务栈. renderScene 该方法就相当于我们使用的startActivity方法了,我们可以在该方法中设置需要渲染的场景(跳转的页面),该方法接收两个参数(必要参数),route和navigator,其中route就是路由的页面,

随机推荐