首页 > 其他分享 >9.PyQt5【布局组件】区域分隔器-QSplitter

9.PyQt5【布局组件】区域分隔器-QSplitter

时间:2023-01-16 10:45:15浏览次数:43  
标签:__ splitter1 self 分割器 QSplitter PyQt5 布局 组件

一、前言

本节我们介绍布局组件中的区域分隔器QSplitter。

二、学习目标

1.QSplitter区域分隔器的应用

三、知识点

1.【QSplitter区域分隔器的应用】

QSplitter是一个带切分条(splitter handle)的布局管理器,可以通过setHandleWidth()函数来设置切分条的宽带。QSplitter可以通过setOrientation()函数来指定分割方向,子组件按加载顺序进行指定方向排列。

  • 添加步骤

    1)创建全局布局

    2)创建分割器实例

    3)为分割器添加组件

    4)为全局布局添加分割器

    5)为窗体设置全局布局

  • 代码示例

    import sys
    from PyQt5.QtCore import Qt
    from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QSplitter, QTextEdit
    
    
    class QmyWidget(QWidget):
    
        def __init__(self, parent=None):
            super().__init__(parent)  # 调用父类的构造函数,创建QWidget窗体
            self.setupUi()
    
        def setupUi(self):
            """页面初始化"""
            # 1.创建全局布局
            self.layout = QVBoxLayout()
            # 2.创建分割器实例
            self.splitter1 = QSplitter(Qt.Horizontal)  # 实例化QSplitter控件并设置初始为水平方向布局
            self.splitter2 = QSplitter(Qt.Vertical)    # 实例化QSplitter控件并设置初始为垂直方向布局
            # 3.为分割器添加组件
            self.textEdit1 = QTextEdit()
            self.textEdit1.setText("Window1")
            self.splitter1.addWidget(self.textEdit1)  # 为splitter1分割器添加部件
            self.splitter1.addWidget(self.splitter2)  # 将分割器2部件也添加到分割器1
    
            self.textEdit2 = QTextEdit()
            self.textEdit2.setText("Window2")
            self.splitter2.addWidget(self.textEdit2)  # 为splitter2分割器添加部件
            self.textEdit3 = QTextEdit()
            self.textEdit3.setText("Window3")
            self.splitter2.addWidget(self.textEdit3)  # 为splitter2分割器添加部件
    
            # 设置分割比
            self.splitter1.setStretchFactor(0, 1)  # 水平第1个区域,比例为1
            self.splitter1.setStretchFactor(1, 2)  # 水平第2个区域,比例为2
            # 4.为全局布局添加分割器
            self.layout.addWidget(self.splitter1)
            # 5.为窗体设置全局布局
            self.setLayout(self.layout)
    
    
    if __name__ == '__main__':
        app = QApplication(sys.argv)
        myMain = QmyWidget()
        myMain.show()
        sys.exit(app.exec_())
    

标签:__,splitter1,self,分割器,QSplitter,PyQt5,布局,组件
From: https://www.cnblogs.com/ckxingchen/p/17054860.html

相关文章

  • 8.PyQt5【布局组件】容器布局-QGroupBox
    一、前言本节我们介绍布局组件中的容器布局QGroupBox。二、学习目标1.QGroupBox容器布局的应用三、知识点1.【QGroupBox容器布局的应用】容器布局将容器控件(Containe......
  • 10.PyQt5【基本组件】标签-QLabel
    一、前言QLabel对象充当占位符以显示不可编辑的文本或图像,或动画GIF电影。它也可以用作其他小部件的助记键。标签上可以显示纯文本、超链接或富文本。二、学习目标1.Q......
  • 11.PyQt5【基本组件】单行输入框-QLineEdit
    一、前言QLineEdit是最常用的输入字段。它提供了一个框,可以在其中输入一行文本。二、学习目标1.QLineEdit常用方法2.QLineEdit常用信号3.QLineEdit组件的应用三、知......
  • 12.PyQt5【基本组件】多行输入框-QTextEdit
    一、前言QTextEdit文本输入框可以输入多行文本。二、学习目标1.QTextEdit常用方法2.QTextEdit常用信号3.QTextEdit组件的应用三、知识点1.【QTextEdit常用方法】......
  • 深入UGUI Mask组件原理和性能深度优化
    对于一款游戏UI系统必不可少,UGUI是现在项目组中实现UI系统的大多数解决方案,使用广泛。UGUI提供的组件很多,外部很多厂商也提供了很多UGUI的第三方插件,而客户端开发人员往往......
  • 2.PyQt5【窗口组件】对话框-Dialog
    一、前言QDialog类是对话框窗口的基类。对话框窗口是主要用于短期任务以及和用户进行简要通讯的顶级窗口。QDialog可以是模态对话框也可以是非模态对话框。QDialog支......
  • 1.【窗口组件】小部件-QWidgt
    一、前言QWidget翻译过来是小部件的意思,QWidgt类是所有用户界面对象的基类。窗口部件是用户界面的一个基本单元:它从窗口系统接收鼠标、键盘和其它事件,并且在屏幕上绘制......
  • Vue+Vite 配置自动导入组件、函数、Icons、样式
    你需要安装一下依赖:unplugin-iconsunplugin-auto-import@iconify-json/epunplugin-auto-importunplugin-vue-components@element-plus/icons-vue以下安装到devDe......
  • 第五节:搜索组件封装剖析、弹框的使用、页面各组件联调
    一.        二.        三.         !作       者:Yaopengfei(姚鹏飞)博客地址:http://www.cnblog......
  • ceph的组件介绍
      ceph是一个开源的分布式存储系统,同时支持对象存储、块存储、文件系统   ceph支持EB(1EB=1,000,000,000GB)级别的数据存储,ceph把每一个待管理的数据流(文件等数据)......