PyQt5主窗口动态加载Widget实例代码


Posted in Python onFebruary 07, 2018

本文研究的主要是PyQt5主窗口动态加载Widget的代码示例,具体如下。

我们通过Qt Designer设计两个窗口,命名为主窗口(MainForm)和子窗口(ChildrenForm)。我们在主窗口的空白中央添加一个栅格布局并命名为MaingridLayout,等会需要将ChildrenForm放进去。

PyQt5主窗口动态加载Widget实例代码

编写代码

from PyQt5 import QtWidgets 
from MainForm import Ui_MainForm 
from Children import Ui_Form 
 
from PyQt5.QtWidgets import QFileDialog 
 
class MainForm(QtWidgets.QMainWindow,Ui_MainForm): 
  def __init__(self): 
    super(MainForm,self).__init__() 
    self.setupUi(self) 
 
    self.child=ChildrenForm()             #self.child = children()生成子窗口实例self.child 
 
 
    self.fileOpen.triggered.connect(self.openMsg)   #菜单的点击事件是triggered 
    self.fileClose.triggered.connect(self.close) 
    self.actionTst.triggered.connect(self.childShow)  #点击actionTst,子窗口就会显示在主窗口的MaingridLayout中 
 
  def childShow(self): 
    self.MaingridLayout.addWidget(self.child)     #添加子窗口 
    self.child.show() 
 
 
  def openMsg(self): 
    file,ok=QFileDialog.getOpenFileName(self,"打开","C:/","All Files (*);;Text Files (*.txt)") 
    self.statusbar.showMessage(file)          #在状态栏显示文件地址 
 
class ChildrenForm(QtWidgets.QWidget,Ui_Form): 
  def __init__(self): 
    super(ChildrenForm,self).__init__() 
    self.setupUi(self) 
 
if __name__=="__main__": 
  import sys 
 
  app=QtWidgets.QApplication(sys.argv) 
  myshow=MainForm() 
  myshow.show() 
  sys.exit(app.exec_())

总结

以上就是本文关于PyQt5主窗口动态加载Widget实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
Python学习小技巧之列表项的拼接
May 20 Python
Python实现的简单排列组合算法示例
Jul 04 Python
通过pykafka接收Kafka消息队列的方法
Dec 27 Python
通过python的matplotlib包将Tensorflow数据进行可视化的方法
Jan 09 Python
在django中,关于session的通用设置方法
Aug 06 Python
Python使用matplotlib绘制三维参数曲线操作示例
Sep 10 Python
python实现高斯投影正反算方式
Jan 17 Python
解决Jupyter无法导入已安装的 module问题
Apr 17 Python
简单了解如何封装自己的Python包
Jul 08 Python
解决python和pycharm安装gmpy2 出现ERROR的问题
Aug 28 Python
Django2.1.7 查询数据返回json格式的实现
Dec 29 Python
python regex库实例用法总结
Jan 03 Python
学习python中matplotlib绘图设置坐标轴刻度、文本
Feb 07 #Python
PyQt5打开文件对话框QFileDialog实例代码
Feb 07 #Python
python OpenCV学习笔记直方图反向投影的实现
Feb 07 #Python
Python实现上下班抢个顺风单脚本
Feb 07 #Python
Python SqlAlchemy动态添加数据表字段实例解析
Feb 07 #Python
Python实现抢购IPhone手机
Feb 07 #Python
浅谈python可视化包Bokeh
Feb 07 #Python
You might like
搜索引擎技术核心揭密
2006/10/09 PHP
PHP 文件上传源码分析(RFC1867)
2009/10/30 PHP
浅析十款PHP开发框架的对比
2013/07/05 PHP
php模拟用户自动在qq空间发表文章的方法
2015/01/07 PHP
PHP微信红包API接口
2015/12/05 PHP
PHP的Json中文处理解决方案
2016/09/29 PHP
javascript打开新窗口同时关闭旧窗口
2009/01/16 Javascript
分享一道笔试题[有n个直线最多可以把一个平面分成多少个部分]
2012/10/12 Javascript
基于jQuery中对数组进行操作的方法
2013/04/16 Javascript
Javascript数组与字典用法分析
2014/12/13 Javascript
js获取元素外链样式的方法
2015/01/27 Javascript
在JavaScript应用中实现延迟加载的方法
2015/06/25 Javascript
js代码验证手机号码和电话号码是否合法
2015/07/30 Javascript
D3.js中data(), enter() 和 exit()的问题详解
2015/08/17 Javascript
bootstrap-wysiwyg结合ajax实现图片上传实时刷新功能
2016/05/27 Javascript
温习Javascript基础语法之词法结构
2016/05/31 Javascript
Javascript OOP之面向对象
2016/07/31 Javascript
JavaScript 闭包机制详解及实例代码
2016/10/10 Javascript
JavaScript实现格式化字符串函数String.format
2016/12/16 Javascript
React 高阶组件入门介绍
2018/01/11 Javascript
解决Vue+Element ui开发中碰到的IE问题
2018/09/03 Javascript
es6数组之扩展运算符操作实例分析
2020/04/25 Javascript
nodeJS与MySQL实现分页数据以及倒序数据
2020/06/05 NodeJs
js基于canvas实现时钟组件
2021/02/07 Javascript
Python标准模块--ContextManager上下文管理器的具体用法
2017/11/27 Python
Python学习笔记之Django创建第一个数据库模型的方法
2019/08/07 Python
python3爬取torrent种子链接实例
2020/01/16 Python
卫校中专生的自我评价
2014/01/15 职场文书
新郎婚宴答谢词
2014/01/19 职场文书
优秀毕业生事迹材料
2014/02/12 职场文书
2015年大学宣传部工作总结
2015/05/26 职场文书
新生开学寄语大全
2015/05/28 职场文书
党员转正介绍人意见
2015/06/03 职场文书
2016年党员读书月活动总结
2016/04/06 职场文书
Python图片处理之图片裁剪教程
2021/05/27 Python
vue特效之翻牌动画
2022/04/20 Vue.js