原文:Wpf(Storyboard)动画简单实例

动画的三种变换方式

RotateTransform:旋转变换变化值:CenterX围绕转的圆心横坐标

CenterY纵坐标

Angle旋转角度(角度正负表示方向)

ScaleTransform:缩放变换变化值:ScaleX横向放大倍数 ScaleY纵向(负值时翻转)

TranslateTransform:平移变换变化值: X横坐标 Y纵坐标

其中

<Image.Projection>      后多了三种变化值,RotationX,RotationY,RotationZ分别围绕X Y Z轴转(单位度数)可以通过设置定时器来实现动画。

<控件.RenderTransform>

<变换方式x:Name = “名字”></变换方式>

</控件.RenderTransform >

在Wpf下使用:

在xaml <window></winodw>中添加:

  1. <window. Resources>
  2. <Storyboard x:Key=”动画名字”  RepeatBehavior="Forever">
  3. <DoubleAnimation Storyboard.TargetName="名字"
  4. Storyboard.TargetProperty="变化值"
  5. From="数 " To="数 "
  6. BeginTime="XX:XX:XX"
  7. Duration="XX:XX:XX">
  1. </DoubleAnimation>
  2. <!--可以同时变化多个值。-->
  3. <DoubleAnimation Storyboard.TargetName="名字"
  4. Storyboard.TargetProperty="变化值"
  5. From="数 " To="数 "
  6. BeginTime="XX:XX:XX"
  7. Duration="XX:XX:XX">
  8. </DoubleAnimation>
  9. </Storyboard>
  10. ndows. Resources>

在程序调用位置中添加(一般在窗口加载方法中添加)运行动画

Storyboard sbd = Resources["动画名字"]asStoryboard;

sbd.Begin();

注意区分这里的名字和动画名字是不同的。一般名字是控件的名字。

RepeatBehavior获取或设置此时间线的重复行为。Forever循环动画

DoubleAnimation它在指定的持续时间内将动画从指定的起始值继续到指定的目标值。

From,To 动画开始到结束变化的值

BeginTime,Duration动画开始到结束所用时间

DoubleAnimation中的值:

AutoReverse="True/False"

是否播放结束后倒序播放,例如:一朵云从左往右飘然后再从右往左飘回来

下面方式实例:

控件部分:

<Image Source="Images/cloud.png" Width="190" Height="50" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="20,20,0,0">

<Image.RenderTransform>

<TranslateTransform x:Name="cloud"></TranslateTransform>

</Image.RenderTransform>

</Image>

动画部分:

<Window.Resources>

<Storyboard x:Key="sbCloud" RepeatBehavior="Forever">

<DoubleAnimation Storyboard.TargetName="cloud"

Storyboard.TargetProperty="X"

From="0" To="280"

BeginTime="00:00:00"

Duration="00:00:10">

</DoubleAnimation>

<DoubleAnimation Storyboard.TargetName="cloud"

Storyboard.TargetProperty="Y"

From="0" To="30"

BeginTime="00:00:00"

Duration="00:00:10">

</DoubleAnimation>

</Storyboard>

</Window.Resources>

Wpf(Storyboard)动画简单实例的更多相关文章

  1. WPF Storyboard 动画播放完毕时触发的事件

    /*故事版*/ Storyboard ClSto2; public PopUpWindow() { /*播放完毕,将当前窗体关闭*/ ClSto2.Completed += (s, e) => ...

  2. Android属性动画-简单实例

    1.ValueAnimator //在2000毫秒内,将值从0过渡到1的动画 ValueAnimator anim = ValueAnimator.ofFloat(0f, 1f); anim.setD ...

  3. WPF单线程定时器 简单实例

    //窗体加载完毕 void MyMessageBox_Loaded(object sender, RoutedEventArgs e) { //启动定时期倒计时,多线程计时 //System.Thre ...

  4. WPF 3D:简单的Point3D和Vector3D动画创造一个旋转的正方体

    原文:WPF 3D:简单的Point3D和Vector3D动画创造一个旋转的正方体 运行结果: 事实上很简单,定义好一个正方体,处理好纹理.关于MeshGeometry3D的正确定义和纹理这里就不多讲 ...

  5. WPF MvvmLight简单实例(1) 页面导航

    原文:WPF MvvmLight简单实例(1) 页面导航 实现了那些功能,先看看截图: 操作描述: 在程序运行后,点击“Load”按钮,页面会加载PageOne,点击PageOne页面中的“Next” ...

  6. wpf 创建动画三种方式

    动画类型 : 故事版,CompositionTarget,DispachTime 那么到此,三种动态创建动画的方法都已经详细介绍过了,大家可能会有种感觉,比较钟情于第一种WPF/Silverlight ...

  7. WPF利用动画实现圆形进度条

    原文:WPF利用动画实现圆形进度条 这是我的第一篇随笔,最近因为工作需要,开始学习WPF相关技术,自己想实现以下圆形进度条的效果,逛了园子发现基本都是很久以前的文章,实现方式一般都是GDI实现的,想到 ...

  8. WPF控制动画开始、停止、暂停和恢复

    1.闲言 好久也没更新一博客了,自己有点发懒,同时确实这几个月来也有点忙.风机监测软件,项目中,有这样一个小需求:正常风机在旋转的时候,上位机软要做一个风机的图片,让它不停地旋转,一但检测到下面风机停 ...

  9. Prism for WPF 搭建一个简单的模块化开发框架(六)隐藏菜单、导航

    原文:Prism for WPF 搭建一个简单的模块化开发框架(六)隐藏菜单.导航 这个实际上是在聊天之前做的,一起写了,也不分先后了 看一下效果图,上面是模块主导航,左侧是模块内菜单,现在加一下隐藏 ...

随机推荐

  1. froala富文本编辑器与golang、beego,脱离ueditor苦海

    一直用百度的ueditor,可是阿里云这种"wo chuo"的云上部署的beego做的服务,总是出现ueditor.all.min.js语法错误,清理浏览器缓存后又会好起来.本地调 ...

  2. 单表(SSM、SpringBoot、SpringCloud、Freemaker、BootStrap等)

    山门也有门门道道, 开发.测试.安卓...... 小子被纳入MIS小山峰,虽不及BOP势力庞大,高手如云, 仅寥寥七人, 却也于入小山峰之事乐趣至极. 前几日峰主布下一道新手任务, 制作一张单表并运行 ...

  3. load file within a jar

    String examplejsPrefix = "example"; String examplejsSuffix = "js"; String exampl ...

  4. fedora、centos、rhel安装Adobe Flash Player 28

    切换到root用户 添加Adobe Repository Adobe Repository 32-bit x86 rpm -ivh http://linuxdownload.adobe.com/ado ...

  5. Oracle 截取字符串(截取固定分隔符中间的字符

    #### Oracle 截取字符串(截取固定分隔符中间的字符) #### ####  oracle 取固定分隔符之间的字符--方法一 substr+ instrSELECT  substr('12JP ...

  6. 项目管理心经——正确的使用Microsoft Project

    第一步:填写task items 第二步:定义个性化日历(Tools-->Change working time) 第二步:填写task duration 第三步:填写前置任务 第四步:自动生成 ...

  7. ubuntu环境下docker的安装与操作

    只要按照本文的步骤一步步的走,就能正确的安装docker并使用,ubuntu需要联网 1. 在Ubuntu中安装Docker 更新ubuntu的apt源索引 sudo apt-get update 安 ...

  8. bower包管理工具

    安装: npm install bower -g (全局安装) 验证: bower --version 指令( 以vue为例 ): 1.  bower info vue              查看 ...

  9. CSRF攻击详解

    CSRF是什么 CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one click attack/session riding,缩写为:CSRF/X ...

  10. 2017-2018-2 20165318 实验四《Android程序设计》实验报告

    2017-2018-2 20165318 实验四<Android程序设计>实验报告 一.实验报告封面 课程:Java程序设计        班级:1653班        姓名:孙晓暄  ...