PyQt5最全60 容器之QMdiArea和QMdiSubWindow容纳多文档的窗口

from PyQt5.QtWidgets import *
import sysclass MultiWindows(QMainWindow):"""容纳多文档的窗口QMdiAreaQMdiSubWindow点击菜单中添加文档窗口可以新建窗口,并且可以设置层叠和平铺两种排列模式"""def __init__(self):super(MultiWindows, self).__init__()self.setWindowTitle('容纳多文档的窗口')self.resize(600, 400)self.count = 0self.mdi = QMdiArea()self.setCentralWidget(self.mdi)bar = self.menuBar()file = bar.addMenu('File')file.addAction('New')file.addAction('Cascade')   # 这两个是设置窗口的排列方式 层叠file.addAction('Tiled')     # 平铺file.triggered.connect(self.windowaction)def windowaction(self, q):if q.text() == 'New':self.count = self.count + 1# 创建一个子窗口sub = QMdiSubWindow()sub.setWidget(QTextEdit())sub.setWindowTitle('子窗口' + str(self.count))self.mdi.addSubWindow(sub)sub.show()elif q.text() == 'Cascade':self.mdi.cascadeSubWindows()elif q.text() == 'Tiled':self.mdi.tileSubWindows()if __name__ == '__main__':app = QApplication(sys.argv)main = MultiWindows()print(main.__doc__)main.show()sys.exit(app.exec_())

结果


点击File菜单下的New,多添加几个。再设置窗口的排列模式,点击Cascade,设置层叠模式

点击Tiled,设置平铺模式

PyQt5最全60 容器之QMdiArea和QMdiSubWindow容纳多文档的窗口相关推荐

  1. 最全解决方法:未解压的word文档修改保存后找不到

    今天在写毕业论文,没想到会碰到这个问题,遇到这种确实很崩溃,一天的努力白费(哭,但是看了很多经验,确定找不到以后也只能重写,所以打算写下来经验以免遇到同样问题的朋友浪费时间纠结于此. 1.首先要确定的 ...

  2. word如何删除空行和全角空格_如何快速批量删除word文档中多余的空行

    我们在网上收集信息资料的时候,觉得不错就会将其拷贝到word文档进行收藏.但是由于拷贝过来可能文件里面太多空格和字符符号之类,导致文档过长,占用了不必要的空行,甚至我们用来打印word文档就会导致浪费 ...

  3. 点击图片放大全屏加载,再次点击图片/文档回到原来位置

    导读:生命不息,折腾不止 第二次写文章,其实我一直都不明白为什么很多人喜欢写文章,现在我好想知道一点点了,学到的东西一旦过了一段时间,好像就忘了- 看来写文章,或许有这么个原因吧,担心有一天忘了. 回 ...

  4. 《Word页码设置全攻略》详细技巧教你Word文档中怎么设置页码?

    无论是在论文排版中也好,在编写书籍也好,我们都需要在Word文档中每一页的底部插入该页面的数目,用于统计书籍的面熟,这样可以更好的方便用户阅读,和查阅.当然插入页码的方式有很多种,在不同的情况下我们需 ...

  5. Python Qt GUI设计:QMdiArea和QMdiSubWindow类实现多文档界面(拓展篇—3)

    一个典型的GUI应用程序可能有多个窗口,选项卡控件和堆栈窗口控件允许一次使用其中的一个窗口.然而,很多时候这种方法不是很有用,因为其他窗口的视图是隐藏的一种同时显示多个窗口的方法是,创建多个独立的窗口 ...

  6. word如何一键全选_word文档怎么全选所有内容

    如何全选word文档中的内容 1.点击所要全选的开头,按住"Shift"不放,光标移到全选的最后,单击一下,就会把中间的内容全选了. 2.以上把页面缩小到屏幕能容得下的状态,以方便 ...

  7. word文档点击打印,目录页码却全是2的原因分析及解决办法

    最近也是临近毕业,在忙着毕业设计定稿,在这个过程,同学w遇见了一个很奇怪的问题,就是每次点击文件目录下的打印功能时,自己论文的目录,全部都变为了2.有时候重新打开,又自动好了,有时候,又不是2,是10 ...

  8. Java并发编程:并发容器之CopyOnWriteArrayList(转载)

    Java并发编程:并发容器之CopyOnWriteArrayList(转载) 原文链接: http://ifeve.com/java-copy-on-write/ Copy-On-Write简称COW ...

  9. Docker容器之compose容器集群的快速编排

    Docker容器之compose容器集群的快速编排 前言 一.Docker-compose简介 二.YAML文件格式及编写注意事项 (1)YAML文件格式 (2)YAML格式的注意事项 (3)YAML ...

最新文章

  1. Jenkins用户权限管理
  2. stm32f4 RAM中运行程序 读保护设置
  3. BZOJ 4819: [Sdoi2017]新生舞会
  4. [进阶] --- Python3 异步编程详解(史上最全篇)
  5. c语言设计通讯录管理程序,C语言程序的设计学生通讯录管理系统方案.docx
  6. 信奥中的数学:博弈论
  7. urtracker 项目管理工具
  8. [MFC]Sqlite问题小记
  9. VS2013使用NuGet下载资源时提示“Newtonsoft.Json”已拥有为“Microsoft.CSharp”定义的依赖项的错误
  10. 你不知道的“虚假需求”
  11. 网络基础学习Day_01
  12. URL短网址生成算法原理
  13. Linux下wine最新版源码编译
  14. 【视频】0基础趣学SEO,引爆流量,让客户主动找上门的躺赚神技
  15. c语言中(*p)[5]与*P[5]的区别
  16. 好用的android app,6款好用的Android手机App
  17. 07Linux打包解压文件-Exiting with failure status due to previous errors
  18. centos服务器部署
  19. Proguard 常用规则
  20. 17.python-解决 pycharm运行提示:from PyQt5 impor ImportError:DLL load failed while importing QtCore

热门文章

  1. 人民币升值对不同行业影响的比较分析
  2. 重新出发的陌陌,新故事不好讲
  3. 利用matlab实现光波(电磁波)的仿真
  4. BQFP与BGA封装
  5. 双USB 蓝牙 MCU芯片 CH583/CH582/CH581引脚信息 跟异同
  6. 开源在今天意味着什么?
  7. 树莓派4B:使用raspi-config实现USB BOOT
  8. 阿里测试7年经验,从功能测试到自动化测试,我整理的超全学习指南
  9. gnu radio学习(二)Stream Tags流标签详解
  10. 日本大阪强制公务员下班,每天18点半电脑自动关机…这能行?!