WPF实现动画——旋转

WPF实现动画——旋转

1、布局

布局为Canvas画布

2、对象

but.Background = Brushes.LightSteelBlue;//按钮控件的背景颜色
but.Width = but.Height = 100;//按钮控件的宽高大小
xz.Children.Add(but);//将按钮控件添加到Canvas画布中
//设置位置在窗口中居中
Canvas.SetLeft(but, this.Width / 2 - but.Width / 2);
Canvas.SetTop(but, this.Height / 2 - but.Height / 2);
but.Click += But_Click;//添加点击事件

就是说让谁旋转(有这个行为)那么谁就是这个对象,这里我使用Button按钮控件,为正方形

3、实例化旋转对象

//实例化顺时针旋转动画对象
 RotateTransform rotate = new RotateTransform();

注: RotateTransform 表示:围绕指定点顺时针旋转某个对象

4、让按钮顺时针旋转

but.RenderTransform = rotate;//顺时针旋转控件

注:RenderTransform 表示:获取或设置影响的呈现位置的转换信息

5、设置按钮控件旋转的中心点(任何一个对象旋转都要依靠一个点)

 but.RenderTransformOrigin = new Point(0.5, 0.5);//设置旋转中心
 //(0.5,0.5)表示中心

6、添加容器时间线

Storyboard story = new Storyboard();//实例化容器时间线对象
//功能:为子动画提供对象和属性的确切信息

注:

Storyboard 故事板,WPF里面的一种时间线,这种时间线可以操作他运行、停止、前进等等,通过BeginStoryBoard StopStoryBoard等动作

7、实例化处理动画的对象

DoubleAnimation da = new DoubleAnimation(0,3600,new Duration(TimeSpan.FromSeconds(3)));//实例化动画处理对象
            //其实值为0就是原点,旋转一周为360度,但是我们要想让他以10倍的速度旋转这360度,旋转为完需要3毫秒

8、旋转的次数为无线旋转

da.RepeatBehavior = RepeatBehavior.Forever;//设置这个旋转的行为无限循环

9、将按钮控件和这个处理动画的事件链接起来

Storyboard.SetTarget(da, but);//对象和属性,对象是按钮,属性就是行为,旋转的行为

10、旋转肯定是让一个角旋转,来达到旋转的效果

 Storyboard.SetTargetProperty(da, new PropertyPath("RenderTransform.Angle"));//顺时针旋转一个角    让一个角顺时针旋转

11、将旋转的行为添加到Storyboard时间线故事板中

story.Children.Add(da);//将这个旋转的行为(处理动画的类)添加到时间线故事板中

12、最后开启这个故事板就ok了

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
WPF(Windows Presentation Foundation)可以通过使用动画和转换效果来实现图片环形旋转轮动效果。首先,我们可以使用WPF中的Ellipse控件来创建一个圆形容器,然后在这个容器中放置图片控件。接下来,我们可以使用WPF中的动画功能来实现图片的环形旋转效果。 首先,我们可以使用DoubleAnimation来定义图片旋转动画效果。通过改变图片控件的RenderTransform属性(例如RotateTransform),我们可以让图片围绕圆形容器的中心点进行旋转。我们可以使用Storyboard来组织动画,并通过使用AnimateProperty属性来让图片按照一定的速度和方向进行环形旋转。 另外,我们还可以使用Path类来定义图片的旋转路径,通过使用PathAnimationUsingPath属性来让图片沿着指定的路径进行环形旋转。在这个过程中,我们可以通过设置RepeatBehavior属性来让图片循环环形旋转一定的次数或者无限循环。 此外,我们还可以通过使用触发器和事件来控制图片环形旋转的起始和停止。例如,我们可以通过鼠标悬停事件(MouseEnter)来触发环形旋转效果的开始,而通过鼠标离开事件(MouseLeave)来触发环形旋转效果的停止。 总体来说,利用WPF中丰富的动画和转换功能,我们可以很容易地实现图片的环形旋转轮动效果。相比较于传统的WinForms等框架,WPF提供了更加灵活和强大的界面设计和动画效果实现方式。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

御弟謌謌

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值