本篇接上一篇,在上一篇中,我们制作了一个简单利用动画来控制播放一首MP3的例子,那么如果我们想监视到动画执行到什么进度了呢?很明显,WPF时可以做到的,只需要响应故事板的CurrentTimeInvalidated事件。

话不多少直接上代码(不了解代码结构的朋友可以看看上一篇):

前台Xaml:

1.添加一个ProgressBar监视进度,注意这里最大值设置为1,因为动画始终Clock的CurrentProcess属性最大值是1。

<ProgressBar x:Name="prsbar" HorizontalAlignment="Left" Maximum="1" Height="7" VerticalAlignment="Top" Width="677" Margin="0,30,0,0"/>

2.响应故事板的CurrentTimeInvalidated事件

<Storyboard x:Key="music" BeginTime="0:0:1" CurrentTimeInvalidated="Storyboard_CurrentTimeInvalidated" >

<MediaTimeline Storyboard.TargetName="md" d:DesignTimeNaturalDuration="205" Source="ALWAYS.mp3"/>

</Storyboard>

后台代码:

/// <summary>

/// 该事件在动画前进一个步长时发生

/// </summary>

/// <param name="sender"></param>

/// <param name="e"></param>

private void Storyboard_CurrentTimeInvalidated(object sender, EventArgs e)

{

//Clock对象为动画时钟

Clock clock = (Clock)sender;

if(clock.CurrentProgress==null)

{

this.prsbar.Value = 0;

}

else

{

this.prsbar.Value = (double)clock.CurrentProgress;

}

}

最终效果如下:

当然,故事板还有其他的事件,比如Completed,CurrentStateValidated等等,有兴趣的朋友欢迎留言一起交流哦。

wpf 动画_WPF中监视动画进度相关推荐

  1. Android实现蝴蝶动画,Android中的动画具体解释系列——飞舞的蝴蝶

    这一篇来使用逐帧动画和补间动画来实现一个小样例,首先我们来看看Android中的补间动画. Android中使用Animation代表抽象的动画类,该类包含以下几个子类: AlphaAnimation ...

  2. Android App开发动画特效中帧动画和电影淡入淡出动画的讲解及实战(附源码和演示视频 简单易懂)

    需要图片集和源码请点赞关注收藏后评论区留言~~~ 一.帧动画 Android的动画分为三类,帧动画,补间动画和属性动画.其中帧动画是实现原理最简单的一种,跟现实生活中的电影胶卷类似,都是在短时间内连续 ...

  3. css情景动画,css3中的动画属性animation应用场景及编写代码教程

    讲解一下css3中的动画属性animation应用场景及编写代码教程 以下讨论的是和css3 动画 属性 animation 相关的css3中的动画属性animation应用场景及编写代码教程教程文章 ...

  4. Android实现蝴蝶动画,Android中的动画具体解释系列【2】——飞舞的蝴蝶

    这一篇来使用逐帧动画和补间动画来实现一个小样例,首先我们来看看Android中的补间动画. Android中使用Animation代表抽象的动画类,该类包含以下几个子类: AlphaAnimation ...

  5. flutter 透明度动画_Flutter中的动画填充+不透明度动画✨

    flutter 透明度动画 Flutter SDK provides us with many widgets which help us in animating elements on scree ...

  6. [0 to 0.5]从零开始学习Android动画知识(中)

    [0 to 0.5]从零开始学习Android动画知识(中) 属性动画(Property Animation) 属性动画(Property Animation)是在 Android 3.0(API 1 ...

  7. java动画闪烁_优化Java动画编程中的显示效果

    Java动画编程有多种实现方法,但它们实现的基本原理是一样的,即在屏幕上画出一系列的帧来造成运动的感觉.Java多线程技术是Java动画编程中普遍运用的技术,它在控制动画程序的流程和动画的显示效果方面 ...

  8. 优化Java动画编程中的显示效果

    优化Java动画编程中的显示效果 作者:赵福军 曹代勇 李青云 发文时间:2002.11.12 09:32:33 Java动画编程有多种实现方法,但它们实现的基本原理是一样的,即在屏幕上画出一系列的帧 ...

  9. JQuery中的动画效果

    show() hide() slideUp slideDown fadeIn fadeOut animate : 自定义动画 JQuery中的动画效果.html <!DOCTYPE html&g ...

最新文章

  1. 企业级Java应用最重要的4个性能指标
  2. LeetCode-链表-142. 环形链表 II
  3. 以人致胜 SAP开启HR云端变革之旅
  4. important meeting with friends
  5. MySQL中的多表插入更新与MS-SQL的对比
  6. kotlin自定义View出现 java.lang.ClassNotFoundException
  7. C 语言中,x += 5 == 4 是什么意思?
  8. Python的闭包的后期绑定问题
  9. 推荐系统组队学习——推荐系统概述
  10. 如何在Inceptor中使用日期函数获取与转换时间
  11. 微信小程序demo测试实践
  12. ubuntu 20.04安装输入法,微信,QQ,亲测使用很方便。
  13. 『常识』罗胖的《罗辑思维》中推荐的书 — 未校正
  14. 用Word做一个漂亮的网页
  15. CS231n Assiganment#1解析(一)——KNN
  16. “快手极速版”的模拟器多开方法
  17. 深度学习--卷积神经网络
  18. Pytorch Note46 生成对抗网络的数学原理
  19. C#操作Word模板并且修改书签
  20. Java多线程之Exchanger

热门文章

  1. review what i studied `date` - 2017-4-24
  2. codevs2693 上学路线(施工)
  3. JAVA spring配置文件总结
  4. Codeforces 486D D. Valid Sets
  5. 堆排序\链表实现局部排序
  6. 通过Web.config实现301重定向
  7. MySQL中文参考手册-- 常用查询的例子
  8. 法尔康,你大爷的,phalcon配置大全
  9. 数据中心服务器机架是什么?
  10. Oracle中dbms_job包的使用