CompositionObject.StartAnimation Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Sobrecargas
| StartAnimation(String, CompositionAnimation) |
Conecta uma animação com a propriedade especificada do objeto e inicia a animação. |
| StartAnimation(String, CompositionAnimation, AnimationController) |
Conecta uma animação com a propriedade especificada do objeto e inicia a animação. |
StartAnimation(String, CompositionAnimation)
Conecta uma animação com a propriedade especificada do objeto e inicia a animação.
public:
virtual void StartAnimation(Platform::String ^ propertyName, CompositionAnimation ^ animation) = StartAnimation;
void StartAnimation(winrt::hstring const& propertyName, CompositionAnimation const& animation);
public void StartAnimation(string propertyName, CompositionAnimation animation);
function startAnimation(propertyName, animation)
Public Sub StartAnimation (propertyName As String, animation As CompositionAnimation)
Parâmetros
- propertyName
-
String
Platform::String
winrt::hstring
A propriedade à qual associar a animação.
- animation
- CompositionAnimation
A animação a ser associada à propriedade especificada.
Requisitos do Windows
| Família de dispositivos |
Windows 10 (introduzida na 10.0.10586.0)
|
| API contract |
Windows.Foundation.UniversalApiContract (introduzida na v2.0)
|
Exemplos
void AnimatingVisualOffset(Visual targetVisual)
{
var animation = _compositor.CreateVector3KeyFrameAnimation();
//
// Define specific easing functions.
//
var linear = _compositor.CreateLinearEasingFunction();
var easeIn = _compositor.CreateCubicBezierEasingFunction(
new Vector2(0.5f, 0.0f), new Vector2(1.0f, 1.0f));
var easeOut = _compositor.CreateCubicBezierEasingFunction(
new Vector2(0.0f, 0.0f), new Vector2(0.5f, 1.0f));
//
// Add a set of key frames to describe how the Offset should change over time.
//
animation.InsertKeyFrame(0.00f, new Vector3(100.0f, 100.0f, 0.0f));
animation.InsertKeyFrame(0.25f, new Vector3(300.0f, 100.0f, 0.0f), easeIn);
animation.InsertKeyFrame(0.50f, new Vector3(300.0f, 300.0f, 0.0f), linear);
animation.InsertKeyFrame(0.75f, new Vector3(100.0f, 300.0f, 0.0f), linear);
animation.InsertKeyFrame(1.00f, new Vector3(100.0f, 100.0f, 0.0f), easeOut);
//
// The animation curve defined by the key frames will scale to match the duration.
//
animation.Duration = TimeSpan.FromMilliseconds(4000);
targetVisual.StartAnimation("Offset", animation);
}
Comentários
Se uma animação já estiver associada à propriedade de um objeto quando StartAnimation for chamada, a animação aplicada anterior será desconectada e a nova animação será atribuída. Da mesma forma, definir a propriedade diretamente fará com que a animação anterior seja desconectada e o novo valor da propriedade entrará em vigor.
A tabela a seguir mostra a lista de propriedades animáveis:
| Objeto | Nome da propriedade | Tipo de propriedade |
|---|---|---|
| Visual | AnchorPoint | Vector2 |
| CenterPoint | Vector3 | |
| Deslocamento | Vector3 | |
| Opacidade | Escalar | |
| Orientation | Vector4 | |
| RotationAngle | Escalar | |
| RotationAxis | Vector3 | |
| Tamanho | Vector2 | |
| TransformMatrix | Matrix4x4 | |
| InsetClip | BottomInset | Escalar |
| LeftInset | Escalar | |
| RightInset | Escalar | |
| TopInset | Escalar | |
| CompositionColorBrush | Cor | Windows.UI.Color |
| CompositionPropertySet | Conjunto de propriedades especificadas pelo desenvolvedor. |
Além disso, as propriedades de alguns efeitos no objeto CompositionEffectBrush podem ser animadas:
| Nome do Efeito | Nome da propriedade | Tipo de propriedade |
|---|---|---|
| SaturationEffect | Saturação | Escalar |
| ColorSourceEffect | Cor | Vector4 |
| AritmeticComposite | Deslocamento | Escalar |
| Source1Amount | Escalar | |
| Source2Amount | Escalar | |
| MultiplyAmount | Escalar | |
| Transform2D | TransformMatrix | Matrix3x2 |
| ContrastEffect | Contraste | Float |
| ExposureEffect | Exposição | Float |
| HueRotationEffect | Ângulo | Float |
| SepiaEffect | Intensidade | Float |
| TemperatureAndTintEffect | Temperatura | Float |
| Tonalidade | Float | |
| GammaTransferEffect | RedAmplitude | Float |
| RedExponent | Float | |
| RedOffset | Float | |
| GreenAmplitude | Float | |
| GreenExponent | Float | |
| GreenOffset | Float | |
| BlueAmplitude | Float | |
| BlueExponent | Float | |
| BlueOffset | Float | |
| AlphaAmplitude | Float | |
| AlphaExponent | Float | |
| AlphaOffset | Float |
Aplica-se a
StartAnimation(String, CompositionAnimation, AnimationController)
Conecta uma animação com a propriedade especificada do objeto e inicia a animação.
public:
virtual void StartAnimation(Platform::String ^ propertyName, CompositionAnimation ^ animation, AnimationController ^ animationController) = StartAnimation;
/// [Windows.Foundation.Metadata.Overload("StartAnimationWithController")]
void StartAnimation(winrt::hstring const& propertyName, CompositionAnimation const& animation, AnimationController const& animationController);
[Windows.Foundation.Metadata.Overload("StartAnimationWithController")]
public void StartAnimation(string propertyName, CompositionAnimation animation, AnimationController animationController);
function startAnimation(propertyName, animation, animationController)
Public Sub StartAnimation (propertyName As String, animation As CompositionAnimation, animationController As AnimationController)
Parâmetros
- propertyName
-
String
Platform::String
winrt::hstring
A propriedade à qual associar a animação.
- animation
- CompositionAnimation
A animação a ser associada à propriedade especificada.
- animationController
- AnimationController
O controlador de animação a ser associado à animação.
- Atributos
Requisitos do Windows
| Família de dispositivos |
Windows 11 Insider Preview (introduzida na 10.0.23504.0)
|
| API contract |
Windows.Foundation.UniversalApiContract (introduzida na v15.0)
|
Comentários
O animationController parâmetro permite associar várias animações à propriedade Progress de um único controlador, o que requer menos objetos ExpressionAnimation do que associar várias propriedades do Progress animador a uma propriedade CompositionObject.