
XAML 文档中代码如下: <TextBlock x:name="TextBlockAnimated" Text="TextBlockAnimated" WIDth="300" Height="50"> <TextBlock.Foreground> <SolIDcolorBrush x:name="TextBlockAnimatedBrush"/> </TextBlock.Foreground> <TextBlock.Triggers> <EventTrigger RoutedEvent="TextBlock.Loaded"> <BeginStoryboard> <Storyboard> <DoubleAnimationUsingKeyFrames Storyboard.Targetname="TextBlockAnimated" Storyboard.TargetProperty="FontSize" Duration="0:0:4" RepeatBehavior="Forever"> <linearDoubleKeyFrame Value="0" KeyTime="0:0:0"/> <linearDoubleKeyFrame Value="50" KeyTime="0:0:1"/> <linearDoubleKeyFrame Value="80" KeyTime="0:0:2"/> <linearDoubleKeyFrame Value="100" KeyTime="0:0:3"/> <linearDoubleKeyFrame Value="0" KeyTime="0:0:4"/> </DoubleAnimationUsingKeyFrames> <colorAnimation Storyboard.Targetname="TextBlockAnimatedBrush" Storyboard.TargetProperty="color" From="Black" To="White" Duration="0:0:4" RepeatBehavior="Forever"> </colorAnimation> </Storyboard> </BeginStoryboard> </EventTrigger> </TextBlock.Triggers> </TextBlock> 下面我们来分部说明这段代码的含义吧! 1 )首先我们声明了文本元素 TextBlock ,并且给 TextBlock 的 Triggers 属性进行复制,该属性的作用是获得对象上的时间触发器 EventTriggers 集合,我们可以在这个集合内部添加多个触发器对象,一旦客户端事件满足我们定义的触发器条件,就会执行内部的代码。 2 )第二步我们通过事件来控制情节串联图版 Storyboard 中的动画。这里需要注意的是 Silverlight 仅能够支持一种触发器 *** 作― <BeginStoryboard> 。 BeginStoryboard 属性表示情节串联图版,它的作用相当于动画的执行脚本。 Storyboard 还有两个很重要的附加属性: Storyboard.Targetname (表示目标元素)和 Storyboard.TargetProperty (表示目标属性)。 3 )在我们这个示例中,我们添加了两个动画对象,一个用来使文本元素字号变大再变小的 DoubleAnimationUsingKeyFrames 和改变前景色 colorAnimation 。我们用 DoubleAnimationUsingKeyFrames 对象 *** 作字体大小,在 4 秒的动画时间内我们定义的字体从 0 到 50 到 80 到 100 最后到 0 。我们用 colorAnimation 对象 *** 作字体文本前景色的改变。在 4 秒的动画时间内从黑色变成白色。 需要注意的是我们这里使用的 DoubleAnimationUsingKeyFrames 和 colorAnimation 属于不同的动画类型。 Silverlight 提供了两种动画: From/To/By 基本动画和 Key-Frame 关键帧动画。 From/To/By 基本动画可以制作指定时间内对象从起始状态到结束状态之间的变化过程,这些变化只能是有规律的匀速变化。 Key-Frame 关键帧动画能够使对象属性在任意值之间变化,不局限于起始和结束的值。变化过程中每一个状态称作关键帧。 总结
以上是内存溢出为你收集整理的Silverlight动画制作之动画概述全部内容,希望文章能够帮你解决Silverlight动画制作之动画概述所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)