Python+PyQt5:停靠组件QDockWidget的实现
QMainWindow主窗体中放置停靠组件QDockWidget的实现流程:
第一步:创建QMainWindow窗体,这是承载QDockWidget的主体
第二步:创建QDockWidget组件实例,设置停靠位置和显示特征,如是否允许浮动和自由移动位置
第三步:因为QDockWidget创建时是空的一个组件,必须在上面放置其他的GUI控件,因此必须将需要的控件组合放置在一个QWidget中,再将GWidget捆绑到QDockWidget中
第四步:利用QMainWindow的addDockWidget方法,将创建的QDockWidget捆绑至主窗体中
完整代码实现如:
class MainWindows(QtWidgets.QMainWindow): # 创立主窗口,继承QMainWindow类 def __init__(self):
super(MainWindows, self).__init__() # 显性调用父类构造函数
self.setWindowTitle("QtDockWidgets demo")
aw = CreateWidget() # 创建一个准备放入dockwidget的窗体控件
self.CreateDockWidget(aw) # 创建dock,并将上一步创建的QWidget放入dock中 def CreateDockWidget(self, widget): # 定义一个createDock方法创建一个dockwidget
dock = QtWidgets.QDockWidget("selectQuote") # 实例化dockwidget类
dock.setWidget(widget) # 带入的参数为一个QWidget窗体实例,将该窗体放入dock中
dock.setObjectName("selectQuote")
dock.setFeatures(dock.DockWidgetFloatable|dock.DockWidgetMovable) # 设置dockwidget的各类属性
self.addDockWidget(QtCore.Qt.LeftDockWidgetArea, dock) # 设置dockwidget放置在QMainWindow中的位置,并且将dockwidget添加至QMainWindow中
运行代码,调用主窗口:
app = QtWidgets.QApplication(sys.argv) aw = MainWindows()
aw.showMaximized() app.exec_()
Python+PyQt5:停靠组件QDockWidget的实现的更多相关文章
- 停靠窗口QDockWidget
停靠窗口QDockWidget要和QMainWindow一起搭配使用的 样式: import sys from PyQt5.QtCore import Qt from PyQt5.QtWidgets ...
- Mac Python PyQt5 环境搭建
pip install pyqt5 测试开发环境 在Terminal里敲下以下代码,如果没有报错就说明安装成功了. python -c "import PyQt5" 或是如下图,导 ...
- PyQt5教程——组件 Ⅱ(八)
这部分的教程将会继续介绍PyQt5的组件.我们这节教程的内容将包括像素图(QPixmap),单行文本框(QLineEdit)和下拉列表框(QComboBox) 像素图(QPixmap) 像素图(QPi ...
- Qt5—嵌入停靠窗口QDockWidget
参考链接:http://blog.csdn.net/summer_xiyer/article/details/12875899 新建一个GUI工程: QDockWidget是QWidget的子类,也等 ...
- Python中文分词组件 jieba
jieba "结巴"中文分词:做最好的Python中文分词组件 "Jieba" Feature 支持三种分词模式: 精确模式,试图将句子最精确地切开,适合文本分 ...
- python web 分页组件
闲来无事便写了一个易使用,易移植的Python Web分页组件.使用的技术栈是Python.Django.Bootstrap. 既然是易使用.易移植的组件,首先介绍一下其在django框架中的调用方式 ...
- Python+PyQT5的子线程更新UI界面的实例《新手必学》
今天小编就为大家分享一篇Python+PyQT5的子线程更新UI界面的实例,具有很好的参考价值,希望对大家有所帮助.一起跟随小编过来看看吧子线程里是不能更新UI界面的,在移动端方面.Android的U ...
- Unbuntu 18.04 LTS 环境下Python安装GDAL组件
Unbuntu 18.04 LTS 环境下Python安装GDAL组件 // 非必要 sudo add-apt-repository ppa:ubuntugis/ppa sudo apt-get up ...
- Python PyQt5 Pycharm 环境搭建及配置
PyQt5相关安装 python 版本 python 3.6.3 1.安装PyQt5 执行命令: pip install pyqt5 2.安装PyQt5-tools 执行命令:pip install ...
随机推荐
- HTTP 协议 Cache-Control 头——性能啊
原文地址:http://tools.ietf.org/html/rfc2616#section-14.9 本文内容 概述术语HTTP Cache-Control 头 可缓存的资源 可被高速 ...
- 转载【linux】Linux学习之CentOS6.x+7.x---网卡的配置
转载至:http://www.cnblogs.com/smyhvae/p/3932903.html [正文] Linux系统版本:Centos 6.5 Linux系统版本:Centos 7 目的:将c ...
- MySQL-锁研究
隔离级别研究: http://www.cnblogs.com/JohnABC/p/3521061.html 表级:引擎 MyISAM, 理解为锁住整个表, 锁定期间, 其它进程无法对该表进行写操作, ...
- Android成长之路-手势识别的实现
手势识别系统: 先把手势库放到项目中:(创建手势库见下一篇博客) 在res文件夹下新建一个名为raw的文件夹,然后把手势库放进去 然后开始项目的创建: strings.xml: <?xml ...
- UniCode 下 CString 转 char* 的方法
今天进行文件操作时,将CString的GetBuffer()后直接倒到char数组后写入文件发现 每个字符与字符之间都有一个空格存在,而且有内容丢失.原来CString类对象GetBuffer(),后 ...
- LeetCode 155 Min Stack(最小栈)
翻译 设计支持push.pop.top和在常量时间内检索最小元素的栈. push(x) -- 推送元素X进栈 pop() -- 移除栈顶元素 top() -- 得到栈顶元素 getMin() -- 检 ...
- 使用VS2012遇到的问题
问题1:VS2012 编译程序时:无法查找或打开PDB文件 解决方法:调试-选项-符号-Microsoft符号服务器打钩,然后确定,就OK了. 问题2:按F5运行.c程序,dos窗口闪退 解决方法:C ...
- Netty(七):流数据的传输处理
Socket Buffer的缺陷 对于例如TCP/IP这种基于流的传输协议实现,接收到的数据会被存储在socket的接受缓冲区内.不幸的是,这种基于流的传输缓冲区并不是一个包队列,而是一个字节队列.这 ...
- 0072 Java中的泛型--泛型是什么--泛型类--泛型方法--擦除--桥方法
什么是泛型,有什么用? 先运行下面的代码: public class Test { public static void main(String[] args) { Comparable c=new ...
- Win7-U盘安装出现"We were unable to copy your files. "
使用Windows 7 USB/DVD Download Tool时,提示We were unable to copy your files. Please check your USB device ...