首页 > 其他分享 >WPF 抖动动画

WPF 抖动动画

时间:2024-11-08 10:50:23浏览次数:4  
标签:动画 Code 抖动 Demo WPF NET

.NET WPF 抖动动画

1 Demo

wpf_animation_shake

2 Code

<!-- 水平抖动 -->
<Button Content="Hello World">
    <Button.RenderTransform>
        <TranslateTransform x:Name="translateTransform" />
    </Button.RenderTransform>
    <Button.Triggers>
        <EventTrigger RoutedEvent="Button.MouseEnter">
            <BeginStoryboard>
                <BeginStoryboard.Storyboard>
                    <Storyboard>
                        <DoubleAnimation
                            Storyboard.TargetName="translateTransform"
                            Storyboard.TargetProperty="X"
                            To="2"
                            Duration="0:0:0.075" />
                        <DoubleAnimation
                            BeginTime="0:0:0.075"
                            Storyboard.TargetName="translateTransform"
                            Storyboard.TargetProperty="X"
                            To="-2"
                            Duration="0:0:0.15" />
                        <DoubleAnimation
                            BeginTime="0:0:0.225"
                            Storyboard.TargetName="translateTransform"
                            Storyboard.TargetProperty="X"
                            To="0"
                            Duration="0:0:0.075" />
                    </Storyboard>
                </BeginStoryboard.Storyboard>
            </BeginStoryboard>
        </EventTrigger>
    </Button.Triggers>
</Button>
<!-- 竖直抖动 -->
<Button Content="Hello World">
    <Button.RenderTransform>
        <TranslateTransform x:Name="translateTransform1" />
    </Button.RenderTransform>
    <Button.Triggers>
        <EventTrigger RoutedEvent="Button.MouseEnter">
            <BeginStoryboard>
                <BeginStoryboard.Storyboard>
                    <Storyboard>
                        <DoubleAnimation
                            Storyboard.TargetName="translateTransform1"
                            Storyboard.TargetProperty="Y"
                            To="2"
                            Duration="0:0:0.075" />
                        <DoubleAnimation
                            BeginTime="0:0:0.075"
                            Storyboard.TargetName="translateTransform1"
                            Storyboard.TargetProperty="Y"
                            To="-2"
                            Duration="0:0:0.15" />
                        <DoubleAnimation
                            BeginTime="0:0:0.225"
                            Storyboard.TargetName="translateTransform1"
                            Storyboard.TargetProperty="Y"
                            To="0"
                            Duration="0:0:0.075" />
                    </Storyboard>
                </BeginStoryboard.Storyboard>
            </BeginStoryboard>
        </EventTrigger>
    </Button.Triggers>
</Button>
<!-- 旋转抖动 -->
<Button Content="Hello World">
    <Button.RenderTransform>
        <RotateTransform x:Name="rotateTransform" />
    </Button.RenderTransform>
    <Button.RenderTransformOrigin>
        <Point X="0.5" Y="0.5" />
    </Button.RenderTransformOrigin>
    <Button.Triggers>
        <EventTrigger RoutedEvent="Button.MouseEnter">
            <BeginStoryboard>
                <BeginStoryboard.Storyboard>
                    <Storyboard>
                        <DoubleAnimation
                            Storyboard.TargetName="rotateTransform"
                            Storyboard.TargetProperty="Angle"
                            To="5"
                            Duration="0:0:0.075" />
                        <DoubleAnimation
                            BeginTime="0:0:0.075"
                            Storyboard.TargetName="rotateTransform"
                            Storyboard.TargetProperty="Angle"
                            To="-5"
                            Duration="0:0:0.15" />
                        <DoubleAnimation
                            BeginTime="0:0:0.225"
                            Storyboard.TargetName="rotateTransform"
                            Storyboard.TargetProperty="Angle"
                            To="0"
                            Duration="0:0:0.075" />
                    </Storyboard>
                </BeginStoryboard.Storyboard>
            </BeginStoryboard>
        </EventTrigger>
    </Button.Triggers>
</Button>

标签:动画,Code,抖动,Demo,WPF,NET
From: https://www.cnblogs.com/winemonk/p/18534634

相关文章

  • WPF StatusBar控件 这一块也能放一些东西
    WPFStatusBar控件这一块也能放一些东西  StatusBar控件一般在窗口的底部。用于显示有关应用程序当前状态的各种信息,如光标位置、字数、任务进度等。<Windowx:Class="WpfApp14.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"......
  • WPF 中 NavigationWindow 与 Page 的继承关系解析
    官网解析:NavigationWindow类   |    Page类publicclassBaseWindow:NavigationWindow{}publicpartialclassCountPage:Page{}都是创建的WPF界面有什么区别?在WPF(WindowsPresentationFoundation)开发中,我们经常需要设计具有多个页面的应用程序。在......
  • WPF Menu控件 我也有个不能点菜的菜单
    WPFMenu控件我也有个不能点菜的菜单 Windows应用程序最常见的部分之一是菜单,有时也称为主菜单,因为应用程序中通常只有一个。菜单很实用,因为它提供了很多选项,只占用很少的空间。向其中添加菜单项非常简单-您只需向其中添加MenuItem元素,并且每个MenuItem可以具有一系列......
  • js动画和css动画的区别?
    ‌JavaScript动画和CSS动画有一些相似之处,但它们在实现方式、控制方式和性能上有很大的不同。‌实现方式‌CSS动画‌:通过CSS属性(如transition、animation)来实现动画效果。CSS动画通过定义关键帧和动画属性,当触发条件满足时,浏览器会自动执行动画效果,并且通过硬件加速优化性......
  • WPF 4款 UI 库
    HandyControlPanuon.WPF.UIAduSkinLayui-WPF HandyControlHandyControl是一套WPF控件库,它几乎重写了所有原生样式,同时包含80余款自定义控件。使用HandyControl你可以轻松地创建一个美观的WPF应用程序,从而大大提高开发效率。官网对应模板或者控件的说明:https://handyorg......
  • 妙趣横生:Python 动画程序的实现与多样化拓展
    以下是另一个使用Python的pygame库实现的简单动画程序示例,实现了一个小球在窗口内反弹的动画效果,标题为《Python之Pygame实现小球反弹动画》:importpygame#初始化pygamepygame.init()#设置窗口大小width,height=640,480screen=pygame.display.set_mode((wid......
  • 前端啊,拿Lottie炫个动画吧
    点赞+关注+收藏=学会了本文简介本文可在公众号「德育处主任」免费阅读有时候在网页上看到一些很炫酷的小动画,比如loading特效,还能控制这个动画的状态,真的觉得很神奇。大部分做后端的不想碰前端,做前端的不想碰动画特效。其实啊,很多时候不需要自己写炫酷的特效,会......
  • 【WPF开发】HandyControl Growl控件Error通知不自动消失的问题
    Error类型的通知不自动消失,但是又需要他跟其他的统一。那么翻翻代码看看为啥不消失呗1、这是决定关闭通知的计时器2、这是通过_staysOpen来控制是否启动计时器_staysOpen为true的时候就会不启动了3、明显看到Error中如果非IsCustom的情况下会_staysOpen那么最后,我们可以......
  • 界面控件DevExpress WPF中文教程:Data Grid——卡片视图设置
    DevExpressWPF拥有120+个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpressWPF能创建有着强大互动功能的XAML基础应用程序,这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。无论是Office办公软件的衍伸产品,还是以数据为中心......
  • WPF Slider控件 划一划
    WPFSlider控件划一划 Slider控件就是常见的滑块。控件的外观一般显示一系列刻度,并存在一个可以拖动的滑块,可以通过拖动滑块来控制控件的值。如Windows11的音量控制。 做一个简单的滑块控件,并将滑块的值显示在文本框中。<StackPanelMargin="10"><!--一个......