- class QAnimationGroup#
QAnimationGroup
类是动画组的一个抽象基类。 更多…继承自:
QSequentialAnimationGroup
,QParallelAnimationGroup
新功能版本 4.6。
概述#
方法#
def
__init__()
def
addAnimation()
def
animationAt()
def
animationCount()
def
clear()
注意
本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译存在问题,还可以通过在https:/bugreports.qt.io/projects/PYSIDE上创建工单来告诉我们。
详细描述#
动画组是动画(
QAbstractAnimation
的子类)的容器。一个组通常负责管理其动画的状态
,即决定何时开始、停止、恢复和暂停它们。目前,Qt提供了两个这样的组:QParallelAnimationGroup
和QSequentialAnimationGroup
。查看它们的类描述以获取详细信息。由于
QAnimationGroup
继承自QAbstractAnimation
,您可以将组组合起来,并轻松构建复杂的动画图。您可以通过调用group()
函数查询所属的组。要启动顶级动画组,您只需从
QAbstractAnimation
使用start()
函数。所谓顶级动画组,我们指的是自身不由其他组包含的组。不支持直接启动子组,这可能会导致意外行为。QAnimationGroup
提供了添加和检索动画的方法。除此之外,您还可以通过调用removeAnimation()
来删除动画,以及通过调用clear()
来清除动画组。您可以通过监听ChildAdded
和ChildRemoved
事件来跟踪组动画中的更改。QAnimationGroup
会接管它管理的动画,并确保当动画组被删除时动画也被删除。构建一个
QAnimationGroup
。parent
会被传递给QObject
的构造函数。- addAnimation(animation)#
- 参数:
animation –
QAbstractAnimation
将
animation
添加到此组中。这将调用insertAnimation
,其索引等于animationCount()
。- animationAt(index)#
- 参数:
index – int
- 返回类型:
返回指向在此组中索引为
index
的动画的指针。此函数在您需要访问特定动画时很有用。index
在 0 和animationCount()
- 1 之间。- animationCount()#
- 返回类型:
int
返回此组管理的动画数量。
- clear()#
从动画组中移除和删除所有动画,并将当前时间重置为0。
- indexOfAnimation(animation)#
- 参数:
animation –
QAbstractAnimation
- 返回类型:
int
返回
animation
的索引。返回的索引可传递给其他需要索引作为参数的函数。- insertAnimation(index, animation)#
- 参数:
index – int
animation –
QAbstractAnimation
在动画组中的
index
处插入animation
。如果index
为0,则动画将在开头插入。如果index
为animationCount()
,则动画将在末尾插入。- removeAnimation(animation)#
- 参数:
animation –
QAbstractAnimation
从本组中移除
animation
。动画的所有权转移给调用方。- takeAnimation(index)#
- 参数:
index – int
- 返回类型:
返回索引为
index
的动画,并将其从动画组中移除。