Переместить изображения в C # - PullRequest
3 голосов
/ 29 января 2011

Я хочу загрузить небольшое изображение в элемент управления WinForms pictureBox и затем анимировать его, перемещая на другую сторону формы.

Я загрузил изображение и использовал таймер для перемещения изображения, но когда я его запускаю, приложение просто показывает конечную позицию pictureBox и его изображение.

Как показать плавно переход изображения в конечную локацию?

Вот мой код:

public partial class Form1 : Form
{
    private int counter = 0;

    void timer_Tick(object sender, EventArgs e)
    {
        counter++;
        if (counter == 1)
        {
            pictureBox1.Show();
            timer1.Stop();
            counter = 0;
        }
    }

    public Form1()
    {
        InitializeComponent();

        timer1.Interval = 10;
        timer1.Tick += new EventHandler(timer_Tick);
    }

    private void button1_Click(object sender, EventArgs e)
    {

        while(i<=100){

             int x = pictureBox1.Location.X;
             int y = pictureBox1.Location.Y;

             pictureBox1.Location = new Point(x+25, y);
             timer1.Start();
        }
     }
}

1 Ответ

3 голосов
/ 29 января 2011

Это работает? Извините, я не могу проверить это там, где я сейчас нахожусь (на нетбуке без VS).

public partial class Form1 : Form
{
    void timer_Tick(object sender, EventArgs e)
    {
        int x = pictureBox1.Location.X;
        int y = pictureBox1.Location.Y;

        pictureBox1.Location = new Point(x+25, y);

        if (x > this.Width)
            timer1.Stop();
    }

    public Form1()
    {
        InitializeComponent();

        timer1.Interval = 10;
        timer1.Tick += new EventHandler(timer_Tick);
    }

    private void button1_Click(object sender, EventArgs e)
    {
        pictureBox1.Show();
        timer1.Start();
     }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...