• PyQt5中的布局管理-QSplitter


    PyQt还提供了一个特殊的布局管理器QSplitter,它可以动态地拖动子控件之间的边界,算是一个动态的局部管理器。

    QSplitter允许用户通过拖动子控件的边界来控制子控件的大小,并提供了一个处理拖曳子控件的控制器。

    在QSplitter对象中各子控件默认是横向布局的,可以使用Qt.Vertical进行垂直布局。

    QSplitter类中的常用方法:

      addWidget()    将小控件添加到QSplitter管理器的布局中

      indexOf()      返回小控件在QSplitter管理器中的索引

      insertWidget()   根据指定的索引将一个控件插入到QSplitter管理器中

      setOrientation()   设置布局方向:

                 Qt.Horizontal,水平方向

                 Qt.Vertical,垂直方向

      setSizes()     设置控件的初始大小

      count()      返回小控件在QSplitter管理器中的数量

    import sys
    from PyQt5.QtWidgets import QWidget, QApplication, QHBoxLayout, QFrame, QSplitter, QTextEdit
    from PyQt5.QtCore import Qt
    
    
    class MyWindow(QWidget):
        def __init__(self):
            super().__init__()
            self.initUI()
    
        def initUI(self):
            hbox = QHBoxLayout(self)
            self.setWindowTitle("QSplitter例子")
            self.setGeometry(300, 300, 300, 200)
    
            topleft = QFrame()
            topleft.setFrameShape(QFrame.StyledPanel)
            bottom = QFrame()
            bottom.setFrameShape(QFrame.StyledPanel)
    
            splitter1 = QSplitter(Qt.Horizontal)
            textedit = QTextEdit()
            splitter1.addWidget(topleft)
            splitter1.addWidget(textedit)
            splitter1.setSizes([100, 200])
    
            splitter2 = QSplitter(Qt.Vertical)
            splitter2.addWidget(splitter1)
            splitter2.addWidget(bottom)
            hbox.addWidget(splitter2)
            self.setLayout(hbox)
    
    
    if __name__ == "__main__":
        app = QApplication(sys.argv)
        win = MyWindow()
        win.show()
        sys.exit(app.exec_())
  • 相关阅读:
    sql server等待类型
    进程死锁运行状态、进程阻塞、死锁监控
    sql server安装教程(2008 R2,图形界面安装/命令提示符安装即静默安装/无人值守安装)
    (3.7)存储引擎--索引的结构与分类
    (3.6)存储引擎--文件与数据的结构
    (3.5)存储引擎--日志
    (3.4)存储引擎--内存
    (3.3)存储引擎--数据读写
    PhoneGap and Titanium
    touch
  • 原文地址:https://www.cnblogs.com/lynsha/p/13469901.html
Copyright © 2020-2023  润新知