原文:Windows Phone开发(38):动画之PointAnimation

PointAnimation也是很简单的,与前面说到的两个Animation是差不多的,属性也是一样的,如By、From、To,不同的是,PointAnimation是目标值从一点到另一个点。

我有理由相信,大家一定懂的,所以,我不多介绍了,给两个例了热一下身就行了。

例一,让直线动起来。

这个例子,以LineGeometry作为动画的目标对象,通过对StartPoint属性和EndPoint属性进行动画来让直线(其实是线段)动起来。

    <Grid>
<Path HorizontalAlignment="Stretch" VerticalAlignment="Stretch"
Stroke="Orange" StrokeThickness="6">
<Path.Data>
<LineGeometry x:Name="lg" StartPoint="25,32" EndPoint="185,97"/>
</Path.Data>
</Path>
<Grid.Resources>
<Storyboard x:Name="std" RepeatBehavior="Forever" AutoReverse="True">
<PointAnimation Duration="0:0:5"
Storyboard.TargetName="lg"
Storyboard.TargetProperty="StartPoint"
To="20,375"/>
<PointAnimation Duration="0:0:5"
Storyboard.TargetName="lg"
Storyboard.TargetProperty="EndPoint"
To="407,490"/>
</Storyboard>
</Grid.Resources>
</Grid>

记得了,在页面的Loaded事件中激活动画。

        // 构造函数
public MainPage()
{
InitializeComponent(); this.Loaded += (sender, e) =>
{
this.std.Begin();
};
}

例二,对曲线进行动画。

本例对BezierSegment的三个点进行动画,即使贝塞尔曲线“游动”起来。

    <Grid>
<Path HorizontalAlignment="Stretch" VerticalAlignment="Stretch"
Stroke="LightGreen" StrokeThickness="12">
<Path.Data>
<PathGeometry>
<PathFigure StartPoint="180,35">
<BezierSegment x:Name="pbm"
Point1="28,180"
Point2="200,270"
Point3="412,700"/>
</PathFigure>
</PathGeometry>
</Path.Data>
</Path>
<Grid.Resources>
<Storyboard x:Name="std" RepeatBehavior="Forever" AutoReverse="True">
<PointAnimation Duration="0:0:3"
Storyboard.TargetName="pbm"
Storyboard.TargetProperty="Point1"
From="27,162" To="415,145"/>
<PointAnimation Duration="0:0:3"
Storyboard.TargetName="pbm"
Storyboard.TargetProperty="Point2"
To="600,400"/>
<PointAnimation Duration="0:0:3"
Storyboard.TargetName="pbm"
Storyboard.TargetProperty="Point3"
To="10,700"/>
</Storyboard>
</Grid.Resources>
</Grid>

后台代码就是在Loaded事件中激活动画,这个大家应该会了。

好了,这节课就这样很轻松地过了。

Windows Phone开发(38):动画之PointAnimation的更多相关文章

  1. Windows Phone开发(42):缓动动画

    原文:Windows Phone开发(42):缓动动画 前面在讨论关键帧动画的时候,我有意把几个带缓动动画的关键帧动画忽略掉,如EasingColorKeyFrame.EasingDoubleKeyF ...

  2. Windows Phone开发(41):漫谈关键帧动画之下篇

    原文:Windows Phone开发(41):漫谈关键帧动画之下篇 也许大家已经发现,其实不管什么类型的动画,使用方法基本是一样的,不知道大家总结出规律了没有?当你找到规律之后,你会发现真的可以举一反 ...

  3. Windows Phone开发(40):漫谈关键帧动画之中篇

    原文:Windows Phone开发(40):漫谈关键帧动画之中篇 一.DiscreteDoubleKeyFrame 离散型关键帧动画,重点,我们理解一下"离散"的意思,其实你查一 ...

  4. Windows Phone开发(39):漫谈关键帧动画上篇

    原文:Windows Phone开发(39):漫谈关键帧动画上篇 尽管前面介绍的几种动画会让觉得很好玩了,但是,不知道你是否发现,在前面说到的一系列XXXAnimation中,都有一个共同点,那就是仅 ...

  5. Windows Phone开发(37):动画之ColorAnimation

    原文:Windows Phone开发(37):动画之ColorAnimation 上一节中我们讨论了用double值进行动画处理,我们知道动画是有很多种的,今天,我向大家继续介绍一个动画类--Colo ...

  6. Windows Phone开发(36):动画之DoubleAnimation

    原文:Windows Phone开发(36):动画之DoubleAnimation 从本节开始,我们将围绕一个有趣的话题展开讨论--动画. 看到动画一词,你一定想到Flash,毕竟WP应用的一个很重要 ...

  7. Windows Store App 过渡动画

    Windows Store App 过渡动画     在开发Windows应用商店应用程序时,如果希望界面元素进入或者离开屏幕时显得自然和流畅,可以为其添加过渡动画.过渡动画能够及时地提示用户屏幕所发 ...

  8. Windows Phone开发(46):与Socket有个约会

    原文:Windows Phone开发(46):与Socket有个约会 不知道大家有没有"谈Socket色变"的经历?就像我一位朋友所说的,Socket这家伙啊,不得已而用之.哈,S ...

  9. Windows Phone开发(43):推送通知第一集——Toast推送

    原文:Windows Phone开发(43):推送通知第一集--Toast推送 好像有好几天没更新了,抱歉抱歉,最近"光荣"地失业,先是忙于寻找新去处,唉,暂时没有下文.而后又有一 ...

随机推荐

  1. UVa11183 Teen Girl Squad, 最小树形图,朱刘算法

    Teen Girl Squad  Input: Standard Input Output: Standard Output You are part of a group of n teenage ...

  2. UVA 10795 - A Different Task(递归)

     A Different Task  The (Three peg) Tower of Hanoi problem is a popular one in computer science. Brie ...

  3. Tokyo Tyrant(TTServer)系列(四)-tcrmgr远程管理与调试

    Tokyo Tyrant(TTServer)系列-tcrmgr(远程管理与调试) tcrmgr是TokyoTyrant的管理工具,对ttserver进行管理与执行命令: 通过输入tcrmgr回车,能够 ...

  4. 与内存有关的那些事儿(数组分配空间不够,导致缓冲区溢出,从而strcpy会出现异常)

    这日,我写下如下代码:#include <iostream>int main(void){ char *p = new char[5]; char *t = new char[5]; st ...

  5. WPF入门介绍

    Windows Vista已经于2007年1月30正式发行零售版本,安装Vista的计算机将会大量出现.在Vista时代,身为编程员,就一定要具备Vista桌面应用开发的能力.而开发Vista桌面应用 ...

  6. 八皇后问题详细分析与解答(递归法解答,c#语言描述)

    八皇后问题,是一个古老而著名的问题,是回溯算法的典型例题.该问题是十九世纪著名的数学家高斯1850年提出:在8X8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行.同一列或 ...

  7. select value from v$diag_info where name='Default Trace File';

    VALUE -------------------------------------------------------------------------------- /u01/diag/rdb ...

  8. 《转》 Openstack Grizzly 指定 compute node 创建 instance

    声明:此文档仅仅做学习交流使用,请勿用作其它商业用途 作者:朝阳_tony 邮箱:linzhaolover@gmail.com 2013年6月4日9:37:44 星期二 转载请注明出处:http:// ...

  9. Zero Clipboard - 跨浏览器兼容的“复制到剪贴板”功能

    开发中经常会用到复制的功能,在 IE 下实现比较简单,但要想做到跨浏览器比较困难了. 本文将介绍一个跨浏览器的库类 Zero Clipboard ,它利用 Flash 进行复制,所以只要浏览器装有 F ...

  10. TR90眼镜_百度百科

    TR90眼镜_百度百科 TR90眼镜