- class QPropertyAnimation#
QPropertyAnimation
类用于动画化 Qt 属性。 更多信息…自版本 4.6 以来引入。
概述#
属性#
propertyName
- 此动画的目标属性名称targetObject
- 此动画的目标 QObject
方法#
def
__init__()
def
propertyName()
def
setPropertyName()
def
setTargetObject()
注意
本文档可能包含从C++自动转换为Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译存在问题,也可以通过在 https:/bugreports.qt.io/projects/PYSIDE 上创建工单来告知我们
详细描述#
警告
本节包含从C++自动转换为Python的代码片段,可能存在错误。
QPropertyAnimation
在 Qt属性 上进行插值。由于属性值存储在QVariant
中,该类继承自QVariantAnimation
,并支持与父类相同的meta
types
动画。声明属性的类必须是
QObject
。为了使属性可动画化,它必须提供设置器(以便QPropertyAnimation
可以设置属性值)。请注意,这使得可以动画化Qt的大部分小部件。让我们看看一个例子from PySide6.QtWidgets import QApplication from PySide6.QtWidgets import QPushButton from PySide6.QtCore import QPropertyAnimation class MyButtonWidget(QWidget): # public MyButtonWidget(QWidget parent = None) def __init__(self, QWidget(parent): button = QPushButton(tr("Animated Button"), self) anim = QPropertyAnimation(button, "pos", self) anim.setDuration(10000) anim.setStartValue(QPoint(0, 0)) anim.setEndValue(QPoint(100, 250)) anim.start() if __name__ == "__main__": a = QApplication(argc, argv) buttonAnimWidget = MyButtonWidget() buttonAnimWidget.resize(QSize(800, 600)) buttonAnimWidget.show() return a.exec()
注意
您还可以通过在开始动画时选择一个
delete
policy
来控制动画的生命周期。将属性名称和应该动画化的
QObject
实例传递给构造函数。然后您可以指定属性的起始值和结束值。对于您自己实现的类中的属性,过程相同——只需检查QVariantAnimation
以确保您的QVariant
类型受支持。QVariantAnimation
类描述了如何详细设置动画。但是,请注意,如果没有设置起始值,属性将从创建QPropertyAnimation
实例时的值开始。QPropertyAnimation
可单独使用,效果极佳。对于复杂动画,例如包含多个对象的动画,提供QAnimationGroup
。动画组是一个可以包含其他动画的动画,并且可以管理其动画的播放时机。请参考QParallelAnimationGroup
的示例。注意
当使用
from __feature__ import true_property
时,可以直接使用属性,或者通过访问函数进行使用。- 属性propertyName: QByteArray#
此属性存储此动画的目标属性名称。
此属性定义了此动画的目标属性名称。属性名称对于动画的运行是必需的。
此属性包含此动画的目标
QObject
。此属性定义了此动画的目标
QObject
。构建一个
QPropertyAnimation
对象。将parent
传递给QObject
的构造函数。- __init__(target, propertyName[, parent=None])
- 参数::
target –
QObject
propertyName –
QByteArray
parent –
QObject
构建一个
QPropertyAnimation
对象。将parent
传递给QObject
的构造函数。动画改变了target
上的属性propertyName
。默认持续时间为250毫秒。另请参阅
- propertyName()#
- 返回类型:
另请参阅
属性
propertyName
的获取器。- setPropertyName(propertyName)#
- 参数::
propertyName –
QByteArray
另请参阅
属性
propertyName
的设置器。属性
targetObject
的设置器。- targetObject()#
- 返回类型:
另请参阅
属性
targetObject
的获取器。