- class QSplitterHandle#
QSplitterHandle 类提供了分割器的处理功能。 更多信息…
概要#
方法#
def
__init__()
def
moveSplitter()
def
opaqueResize()
def
orientation()
def
setOrientation()
def
splitter()
注意
此文档可能包含自动从 C++ 转译到 Python 的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译有误,也可以在https:/bugreports.qt.io/projects/PYSIDE上创建工单告诉我们。
详细描述#
警告
本节包含自动从 C++ 转译到 Python 的代码片段,可能包含错误。
QSplitterHandle
通常是人们想到分割器时会想到的内容。它是用于调整小部件大小的处理程序。对于通常使用
QSplitter
的开发者而言,无需担心QSplitterHandle
。它为想要提供额外功能(如弹出菜单)的分割控制器提供的开发者。创建分割控制器的一种典型方式是继承
QSplitter
并重新实现createHandle()
方法以实例化自定义分割控制器。例如,一个最小的QSplitter
子类可能看起来像这样class Splitter(QSplitter): # public Splitter(Qt.Orientation orientation, QWidget parent = None) # protected QSplitterHandle createHandle() override
createHandle()
的实现简单地构建了一个自定义分割控制器,在此示例中称为Splitter
QSplitterHandle Splitter.createHandle() return SplitterHandle(orientation(), self)
可以通过诸如
orientation()
和opaqueResize()
函数来获取特定控制器的信息,并从其父控制器中检索。此类详细信息可用于根据分割器的方向提供不同的自定义控制器外观。自定义控制器子类的高度复杂性与它需要执行的任务有关。一个简单的子类可能只需提供一个
paintEvent()
实现def paintEvent(self, event): painter = QPainter(self) if orientation() == Qt.Horizontal: gradient.setStart(rect().left(), rect().height()/2) gradient.setFinalStop(rect().right(), rect().height()/2) else: gradient.setStart(rect().width()/2, rect().top()) gradient.setFinalStop(rect().width()/2, rect().bottom()) painter.fillRect(event.rect(), QBrush(gradient))
在此示例中,根据控制器的方向设置不同的预定义渐变。
QSplitterHandle
为控制器提供了合理的尺寸提示,因此除非控制器有特殊尺寸要求,否则子类不需要提供sizeHint()
的重新实现。也请参阅
- __init__(o, parent)#
- 参数:
o –
Orientation
parent –
QSplitter
创建一个具有给定
orientation
和parent
的QSplitter
控制器。- closestLegalPosition(p)#
- 参数:
p – int
- 返回类型:
int
返回分隔条手柄到
pos
的最近合法位置。位置是从分隔条左边缘或上边缘计算的,即使在从右到左的语言中也是如此。- moveSplitter(p)#
- 参数:
p – int
告诉分隔条将这个手柄移动到位置
pos
,这是从部件左边缘或上边缘的距离。注意,在从右到左的语言中,
pos
也是从左(或上)计算的。这个函数在调用moveSplitter()
之前,会将pos
映射到适当的位移。- opaqueResize()#
- 返回类型:
bool
如果部件在交互式移动分隔条时动态(透明)地调整大小(返回
true
),否则返回false
。此值由QSplitter
控制。也请参阅
- orientation()#
- 返回类型:
返回手柄的朝向。这通常从
QSplitter
中传播- setOrientation(o)#
- 参数:
o –
Orientation
将分隔条手柄的朝向设置为
orientation
。这通常从QSplitter
中传播。返回与该分割处理器关联的分割器。
也请参阅