zoukankan      html  css  js  c++  java
  • 滚轮缩放效果

            public void MouseWheelEventHandler(object sender, MouseWheelEventArgs e)
            {
                double oldScalX = ((ScaleTransform)canvas.RenderTransform).ScaleX;
                double oldScalY = ((ScaleTransform)canvas.RenderTransform).ScaleY;
    
                var storyBoard = new Storyboard();
                //var group = new TransformGroup();
                //var scale = new ScaleTransform(1.5, 1.5);
                //group.Children.Add(scale);
                //group.Children.Add(new TranslateTransform(300, 300));
                //canvas.RenderTransform = group;
    
                RegisterName("MainCanvas", canvas);
    
                var growAnimation = new DoubleAnimation();
                QuinticEase ee = new QuinticEase();
                ee.EasingMode = EasingMode.EaseOut;
                growAnimation.EasingFunction = ee;
    
                growAnimation.From = oldScalX;
                if (e.Delta > 0)
                {
                    growAnimation.To = oldScalX + 0.2;
                }
                else
                {
                    growAnimation.To = oldScalX - 0.2;
                }
                storyBoard.Children.Add(growAnimation);
    
                var growAnimation2 = new DoubleAnimation();
                QuinticEase ee2 = new QuinticEase();
                ee2.EasingMode = EasingMode.EaseOut;
                growAnimation2.EasingFunction = ee2;
                growAnimation2.From = oldScalY;
                if (e.Delta > 0)
                {
                    growAnimation2.To = oldScalY + 0.2;
                }
                else
                {
                    growAnimation2.To = oldScalY - 0.2;
                }
                storyBoard.Children.Add(growAnimation2);
    
    
                Storyboard.SetTargetProperty(growAnimation, new PropertyPath("RenderTransform.ScaleX"));
                Storyboard.SetTargetProperty(growAnimation2, new PropertyPath("RenderTransform.ScaleY"));
                Storyboard.SetTargetName(growAnimation, "MainCanvas");
                Storyboard.SetTargetName(growAnimation2, "MainCanvas");
                storyBoard.Begin(this);
    
    
            }

    添加事件代码

            private void UserControl_Loaded_1(object sender, RoutedEventArgs e)
            {
                Window.GetWindow(this).MouseWheel += MouseWheelEventHandler;
            }
  • 相关阅读:
    day01--计算机硬件基础笔记
    22 Jun 18 Django,ORM
    21 Jun 18 Django,ORM
    20 Jun 18 复习, mysql
    20 Jun 18 Django,ORM
    19 Jun 18 复习, 正则表达式
    19 Jun 18 Django
    15 Jun 18 复习, shutil模块
    15 Jun 18 Django
    14 Jun 18 复习, form表单
  • 原文地址:https://www.cnblogs.com/wangjixianyun/p/3751778.html
Copyright © 2011-2022 走看看