WPF,这样的动画怎么实现

货郎大叔 2017-06-26 01:26:45

DoubleAnimation TX = new DoubleAnimation();
TX.Completed += TX_Completed1;
TX.To = X;
TX.Duration = TimeSpan.FromSeconds(Dduration + Iduration);
TX.BeginTime = TimeSpan.FromSeconds(Dbegintime + Ibegintime);
TX.AccelerationRatio = 0.3;
tra1.BeginAnimation(TranslateTransform.XProperty, TX);

在实现动画的时候,我想让动画在末尾的时候,缓缓停下来,很缓很缓很缓......
我知道AccelerationRatio属性似乎有那么一个功能,但是动画在末尾的时候还是停得很快,我想让它很缓很缓很缓......就像火车进站那样缓。
是怎么做的呢?
...全文
311 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
你可以使用DoubleKeyFrame类的子类DiscreteDoubleKeyFrame 类往动画中插入关键帧,控制动画到达关键帧的时间来达到你的目的,即从开始到结束,到达你加入的关键帧的时间可以不一样。
  • 打赏
  • 举报
回复
引用 2 楼 yyliudianhu 的回复:
用StoryBoard,里面有缓动函数,用DoubleAnimation这些简单动画,就是卡卡的感觉
楼上说的对 欢迎阅读我的文章 http://blog.csdn.net/liuyuehui110/article/details/73189003
yyliudianhu 2017-06-26
  • 打赏
  • 举报
回复
用StoryBoard,里面有缓动函数,用DoubleAnimation这些简单动画,就是卡卡的感觉
  • 打赏
  • 举报
回复
AccelerationRatio 这个是设置加速的频率, DecelerationRatio 才是设置减速的频率,而且它们的和不能大于1

111,098

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧