本文介绍了如何在WPF中创建掉落的对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

你好,

我正在尝试构建一个简单的应用程序,以模拟屏幕上的雨水.我不是高级程序员,所以我想出了这种算法:

Hello,

I''m trying to build a simple application that will simulate rain on the screen. I''m not an advanced programer so I came up with this algorithm for one drop:

public partial class MainWindow : Window
    {
        #region Member Variables
        public float x, y, xvel, yvel;
        int gamewidth = 640;
        int gameHeight = 480;
        Random r = new Random();
        public System.Windows.Threading.DispatcherTimer timer1;
        #endregion Member Variables

        public MainWindow()
        {
            InitializeComponent();
            timer1 = new System.Windows.Threading.DispatcherTimer();
            timer1.Interval = TimeSpan.FromSeconds(0.01); // 1 second interval 
            timer1.Tick += TimerTicked; // Event for handling the fetching data 
        }

        public void MoveRain()
        {

            if (y < gameHeight - rainDrop.ActualHeight)
            {
                y += yvel;
                Canvas.SetLeft(rainDrop, x);
                Canvas.SetTop(rainDrop, y);
                timer1.Start();
            }
            else
            {
                x = r.Next(gamewidth);
                y = 0;
                yvel = r.Next(4) + 1;
                timer1.Start();
            }
        }

        private void SetStartPosition()
        {
            x = r.Next(gamewidth);
            y = 0;
            yvel = r.Next(4) + 1;
            timer1.Start();
        }

        private void button1_Click(object sender, RoutedEventArgs e)
        {
            SetStartPosition();
        }

        private void TimerTicked(object sender, EventArgs args)
        {
            timer1.Stop();
            MoveRain();
        }

    }



但是我想要的是让多个液滴出现在屏幕上,并在不同的时间掉落.你有什么想法或建议吗? Thx!



But what I want is to have several drops appear on the screen and fall at different times. Do you have any ideas or suggestions? Thx!

推荐答案

Storyboard's

来实现和Storyboard中的KeyFrameAnnimation.
您可以访问此链接并从中获得一些有用的信息:
[ ^ ]

and KeyFrameAnnimation inside it Storyboard.
You can visit this link and get some useful things from that:
http://xceed.com/CS/blogs/xamlhero/archive/2009/02/16/animation-in-xaml-to-get-you-started.aspx[^]


这篇关于如何在WPF中创建掉落的对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-05 15:26
查看更多