pyqt5-QSplitter分裂器组件

发布时间 2023-10-01 22:33:15作者: 挖洞404

1、介绍

QSplitter,分裂器组件。用于水平或垂直方向上布局管理,可以拖动其内某一方向上的分隔线,改变各组件在该方向上的尺寸分配。

QSplitter(parent: typing.Optional[QWidget] = None)
QSplitter(orientation: Qt.Orientation, parent: typing.Optional[QWidget] = None)

2、子组件尺寸

setSizes(self, list: Iterable[int])
setSizes([1000,4000])
  • 设置组件内直接子组件的宽度或高度比例,具体由布局方向决定
  • 注意,一般需要将其内的数值设置得比较大,超过子组件的真实宽度或高度,原理的话是该方法是只有真实尺寸不足时按照比例显示,而如果设置过小会完全不起作用
sizes(self) -> List[int]
  • 获取各组件的宽度或高度,具体由分裂器是水平还是垂直具体
setStretchFactor(self, index: int, stretch: int)
  • 设置子组件的伸缩比列
setChildrenCollapsible(self, a0: bool) 
  • 设置各子组件是否可折叠
setCollapsible(self, index: int, a1: bool)
  • 设置某子组件是否可折叠
isCollapsible(self, index: int) -> bool 
  • 判断某子组件是否可折叠

3、子组件管理

widget(self, index: int) -> QWidget 
  • 获取指定索引的组件
 addWidget(self, widget: QWidget)
  • 添加组件
count(self) -> int
  • 获取子组件的个数
indexOf(self, w: QWidget) -> int
  • 获取某组件在QSplitter组件内的索引