pyQT5 实现窗体之间传值的示例


Posted in Python onJune 20, 2019

准备

一个MainWindow和一个WidgetForm,总代码如下

# -*- coding: utf-8 -*-
 
from PyQt5 import QtWidgets
from main_windows import Ui_MainWindow
import sys
from wid_defs import my_widgets
from dlg_defs import my_Dialog
 
class MyWindow(QtWidgets.QMainWindow,Ui_MainWindow):
  def __init__(self):
    super(MyWindow,self).__init__()
    self.setupUi(self)
    
  def openDialog(self):
     self.dlg = my_Dialog()
     www = self.textEdit.toPlainText()
     self.dlg.setT(www)
     self.dlg.exec_()  
    
  def openWidget(self):
    self.wid = my_widgets()
    self.wid.pushButton.clicked.connect(self.GetText)
    www= self.textEdit.toPlainText()
    self.wid.setT(www)    
    self.wid.show() #close wid form
    
    
  def GetText(self):
    self.textEdit.setText(self.wid.textEdit.toPlainText())   
    self.wid.close() 
    
if __name__ == "__main__":
  app = QtWidgets.QApplication(sys.argv)
  mainWindow = MyWindow()
  mainWindow.show()
  sys.exit(app.exec_())

1 父窗体—子窗体

def slot3(self):
     self.dlg = my_Dialog()
     www = self.textEdit.toPlainText()
     self.dlg.setT(www)
     self.dlg.exec_()

1 实例化子窗体:

self.dlg = my_Dialog()

2 直接将父窗体中的变量:

www = self.textEdit.toPlainText()

3 赋给子窗体的对象:

self.dlg.setT(www)

4 再调出子窗体

self.dlg.exec_()

pyQT5 实现窗体之间传值的示例

运行点击 openDialog按钮,会将父窗体textEdit中的内容传到子窗体中。

2 子窗体—父窗体

def slot2(self):
    #widgetForm
    self.wid = my_widgets()
    self.wid.pushButton.clicked.connect(self.GetLine)
    
    #dialog
    self.dlg = my_Dialog()
    self.dlg.buttonBox.accepted.connect(self.GetLine)
    
    www= self.textEdit.toPlainText()
    self.wid.setT(www)    
    self.wid.show()
 
  def GetText(self):
    self.textEdit.setText(self.wid.textEdit.toPlainText())

1 实例化子窗体

self.wid = my_widgets()

2 子窗体按钮(通常是确认按钮)添加关联到父窗体的函数Getline()

(1)widgetForm的方法

self.wid.pushButton.clicked.connect(self.GetLine)

(2)Dialog的方法

self.dlg.buttonBox.accepted.connect(self.GetLine)

3 定义getline函数的内容,函数将在子窗体确认按钮点击后执行

def GetLine(self):
    self.textEdit.setText(self.dlg.textEdit.toPlainText())

pyQT5 实现窗体之间传值的示例

在子窗体中点击OK,会将子窗体文本框文字传递到父窗体的文本框中

以上这篇pyQT5 实现窗体之间传值的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用Python的Treq on Twisted来进行HTTP压力测试
Apr 16 Python
python通过zabbix api获取主机
Sep 17 Python
python接口自动化(十六)--参数关联接口后传(详解)
Apr 16 Python
基于腾讯云服务器部署微信小程序后台服务(Python+Django)
May 08 Python
python 根据字典的键值进行排序的方法
Jul 24 Python
python在OpenCV里实现投影变换效果
Aug 30 Python
Python中turtle库的使用实例
Sep 09 Python
vscode 配置 python3开发环境的方法
Sep 19 Python
django ajax发送post请求的两种方法
Jan 05 Python
Python MySQLdb 执行sql语句时的参数传递方式
Mar 04 Python
在pyCharm中下载第三方库的方法
Apr 18 Python
python中super()函数的理解与基本使用
Aug 30 Python
python3.6环境安装+pip环境配置教程图文详解
Jun 20 #Python
Python 3.6 -win64环境安装PIL模块的教程
Jun 20 #Python
详解Python 调用C# dll库最简方法
Jun 20 #Python
python async with和async for的使用
Jun 20 #Python
python aiohttp的使用详解
Jun 20 #Python
Python 中Django验证码功能的实现代码
Jun 20 #Python
Puppeteer使用示例详解
Jun 20 #Python
You might like
DIY一个适配电脑声卡的动圈话筒放大器
2021/03/02 无线电
ajax+php打造进度条代码[readyState各状态说明]
2010/04/12 PHP
Yii的CDbCriteria查询条件用法实例
2014/12/04 PHP
详解php中空字符串和0之间的关系
2016/10/23 PHP
放弃用你的InnerHTML来输出HTML吧 jQuery Tmpl不详细讲解
2013/04/20 Javascript
JavaScript验证18位身份证号码最后一位正确性的实现代码
2014/08/07 Javascript
javascript实现获取服务器时间
2015/05/19 Javascript
jQuery提示插件qTip2用法分析(支持ajax及多种样式)
2016/06/08 Javascript
微信小程序购物商城系统开发系列-目录结构介绍
2016/11/21 Javascript
js+css3实现旋转效果
2017/01/20 Javascript
js 单引号替换成双引号,双引号替换成单引号的实现方法
2017/02/16 Javascript
浅谈Vue的加载顺序探讨
2017/10/25 Javascript
JS简单实现查看文档创建日期、修改日期和文档大小的方法示例
2018/04/08 Javascript
微信小程序实现的自定义分享功能示例
2019/02/12 Javascript
解析原来浏览器原生支持JS Base64编码解码
2019/08/12 Javascript
vue中的mescroll搜索运用及各种填坑处理
2019/10/30 Javascript
node.js使用zlib模块进行数据压缩和解压操作示例
2020/02/12 Javascript
vue-video-player 断点续播的实现
2021/02/01 Vue.js
Python命名空间详解
2014/08/18 Python
python的即时标记项目练习笔记
2014/09/18 Python
玩转python爬虫之URLError异常处理
2016/02/17 Python
Python中用字符串调用函数或方法示例代码
2017/08/04 Python
Python入门之三角函数sin()函数实例详解
2017/11/08 Python
python3文件复制、延迟文件复制任务的实现方法
2019/09/02 Python
Python : turtle色彩控制实例详解
2020/01/19 Python
python实现TCP文件传输
2020/03/20 Python
Pytest如何使用skip跳过执行测试
2020/08/13 Python
django数据模型中null和blank的区别说明
2020/09/02 Python
消防宣传口号
2014/06/16 职场文书
科级干部群众路线教育实践活动对照检查材料思想汇报
2014/09/20 职场文书
教师三严三实心得体会
2014/10/11 职场文书
违章停车检讨书
2014/10/21 职场文书
2016圣诞节贺卡寄语
2015/12/07 职场文书
学法用法心得体会(2016推荐篇)
2016/01/21 职场文书
《月光曲》教学反思
2016/02/16 职场文书
SQL Server——索引+基于单表的数据插入与简单查询【1】
2021/04/05 SQL Server