PyQt5-多窗口数据传输
#窗口之间数据传递(通过属性方式)
from PyQt5.QtWidgets import QDialogButtonBox, QDateTimeEdit,QDialog,QComboBox,QTableView,QAbstractItemView,QHeaderView,QTableWidget, QTableWidgetItem, QMessageBox,QListWidget,QListWidgetItem, QStatusBar, QMenuBar,QMenu,QAction,QLineEdit,QStyle,QFormLayout, QVBoxLayout,QWidget,QApplication ,QHBoxLayout, QPushButton,QMainWindow,QGridLayout,QLabel
from PyQt5.QtGui import QIcon,QPixmap,QStandardItem,QStandardItemModel,QCursor,QFont,QBrush,QColor,QPainter,QMouseEvent,QImage,QTransform
from PyQt5.QtCore import QStringListModel,QAbstractListModel,QModelIndex,QSize,Qt,QObject,pyqtSignal,QTimer,QEvent,QDateTime,QDateimport sys
class Win(QWidget):def __init__(self,parent=None):super(Win, self).__init__(parent)self.resize(400,400)self.btn=QPushButton("按钮",self)self.btn.move(50,50)self.btn.setMinimumWidth(120)self.btn.clicked.connect(self.openDialog)#显示子窗口传来的日期字符串或者其他数据self.label=QLabel('这里显示信息',self)self.label.setMinimumWidth(420)#打开Dialogdef openDialog(self):dialog=Dialog(self)#连接【子窗口内置消息和主窗口的槽函数】dialog.datetime.dateChanged.connect(self.slot_inner)#连接【子窗口自定义消息和主窗口槽函数】dialog.dialogSignel.connect(self.slot_emit)dialog.show()def slot_inner(self,date):print("主窗口:method_1")self.label.setText("①"+str(date)+">>内置消息获取日期为")def slot_emit(self,flag,str):print("主窗口:method_2")print(flag)if flag=="0":#点击okself.label.setText("②"+str(str)+">>自定义消息")else:#点击cancelself.label.setText(str)#弹出框对象
class Dialog(QDialog):#自定义消息dialogSignel=pyqtSignal(int,str)def __init__(self,parent=None):super(Dialog, self).__init__(parent)layout=QVBoxLayout(self)self.label=QLabel(self)self.datetime=QDateTimeEdit(self)self.datetime.setCalendarPopup(True)self.datetime.setDateTime(QDateTime.currentDateTime())self.label.setText("请选择日期")layout.addWidget(self.label)layout.addWidget(self.datetime)buttons=QDialogButtonBox(QDialogButtonBox.Ok|QDialogButtonBox.Cancel,Qt.Horizontal,self)buttons.accepted.connect(self.accept)#点击okbuttons.rejected.connect(self.reject)#点击cancellayout.addWidget(buttons)def accept(self):#点击ok是发送内置信号print("accept")self.dialogSignel.emit(0,self.datetime.text())self.destroy()def reject(self):#点击cancel时,发送自定义信号print('reject')self.dialogSignel.emit(1,"清空")self.destroy()if __name__=='__main__':app=QApplication(sys.argv)win = Win()win.show()sys.exit(app.exec_())
转载于:https://www.cnblogs.com/pythonClub/p/10260782.html
PyQt5-多窗口数据传输相关推荐
- pyqt5子窗口跳出主窗口_弹出式窗口与 可用性,转换和跳出率
pyqt5子窗口跳出主窗口 Written by Cassandra Naji 由卡珊德拉·纳吉 ( Cassandra Naji)撰写 They go by many names - modal w ...
- python做一个窗口样式_python3+PyQt5 自定义窗口部件--使用窗口部件样式表的方法...
本文借用HTML的css语法,将样式表应用到窗口部件.这里只是个简单的例子,实际上样式表的语法很丰富. 以下类似于css: StyleSheet = """ QCombo ...
- PyQt5子窗口开启后锁定或隐藏主窗口
PyQt5子窗口开启后锁定或隐藏主窗口 老规矩,先放图 锁定主窗口 隐藏主窗口 实现 实现方式非常简单与C++方式基本相同 在主界面UI初始化时把按钮信号与拉起窗口的槽函数绑定,这里我的按钮为sele ...
- PyQt5设置窗口和应用程序图标及设置控件提示信息
PyQt5设置窗口和应用程序图标及设置控件提示信息 设置窗口和应用程序图标 设置控件提示信息 设置窗口和应用程序图标 使用到的库from PyQt5.QtGui import QIcon 使用到的方法 ...
- pyqt 子窗口控制主窗口绘图_实战PyQt5: 005-主窗口QMainWindow
QMainWindow简介 在桌面应用中,一个应用软件通常都会包含一个主窗口,主窗口是承载所有控件的窗体, 在PyQt5中常用的主窗体有两种QMainWindow和QDialog,他们也都继承自QWi ...
- PyQt5:窗口的基本功能
1.设置窗口图标 设置窗口图标需要使用QApplication类下的setWindowIcon方法,会在窗口的左上角显示图标.setWindowIcon方法需要传入一个图像文件路径,文件格式可以使用p ...
- PyQt5在窗口上显示动态图表
在某些情况下,可能需要在窗口界面中显示动态图表来体现数据的更新变化.本人正好在做项目中碰到了这种情况,需要动态显示一个甘特图,就以此为例告诉大家怎么实现.首先,直接上完整代码: import sys ...
- PyQt5 常用窗口总结
PyQt5 最常见的窗口有三种,分别是Main Window.Widget和Dialog Main Window:即主窗口,主要为用户提供一个带有菜单栏.工具栏和状态栏的窗口. Widget:通用窗口 ...
- pyqt5多窗口来回切换
# -*- coding: utf-8 -*- ''' 多窗口反复切换,只用PyQt5实现 ''' import sys#导入系统 from PyQt5.QtWidgets import QAppli ...
最新文章
- 2017-1-7 html元素分类(1)
- 静态方法多次调用内存_java虚拟机的内存分析
- html5主要是针对哪方面行优化,前端知识点总结(HTML篇)
- 替换ExpandableListView右边箭头Group Indicator(小图标)
- 为什么重写equals()和hashcode()
- httpd网页身份认证
- SPOJ7258(后缀自动机--第k大的子串)
- 转:PHP开发框架流行度排名:Laravel居首
- 二、Vue菜鸟小教程-vue-router的简单入门程序
- C#使用NOPI导入Excel
- 【rmzt】小清新美女win7主题_7.14
- apache2.4配置https协议(key文件、crt文件、csr文件生成方法)
- 派克轴向柱塞泵PV系列
- 你真的知道什么是置信区间吗?
- Servlet中forward和redirect的区别(转)
- 如何挑选自己喜欢的colormap样式
- 刷机提示图像和设备不匹配_苹果用户一定要学会的刷机教程,包治百病
- java交错数组,C#交错数组用法实例
- HEVC编码块CU递归划分
- 指针、野指针、指针常量、常量指针
热门文章
- 千万数据去重_如何在 1 秒内做到大数据精准去重?
- 阶乘末尾蓝桥杯java_Java实现第九届蓝桥杯阶乘位数
- mysql 日期分隔符_sql中的日期处理
- 2D Fast Marching Computations
- 关于java是最好的语言的段子_疯狂java——第一章 java语言概述与开发环境
- php amp 26472,汉字与UNICODE的转换 通过文件操作
- java validate 框架_如何使用validator框架来validatebean
- restful可以转发么_RESTful 的收益是什么?
- sqlserver 查询某个时间段执行sql语句_为什么 SQL 查询不是先执行SELECT语句?
- 用Excel对会员客户交易数据进行RFM分析