pyqt5-QSplitter分裂器组件
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])
- 设置组件内直接子组件的宽度或高度比例,具体由布局方向决定
- 注意,一般需要将其内的数值设置得比较大,超过子组件的真实宽度或高度,原理的话是该方法是只有真实尺寸不足时按照比例显示,而如果设置过小会完全不起作用
- 如果该方向上有n个组件,而只设置了n-1个组件的比例,则最后的组件会收起。
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组件内的索引