вопрос по анимации c#
Хотел бы поинтересоваться как сделать анимацию на шарпике (вин формс).
Вот такое вот плавное приближение, ну и отдаление желательно (на сайте криво сделано, другой не нашёл) | not advertise:
https://www.youtube.com/watch?v=-94e6BuFoiY&feature=youtu.be
Сейчас реализовано так: (но проблема в том, что я приближаю картинку а не кнопку, ну мне нужно картинку, а она замыливается + плавности никакой нет)
public delegate void sendMessageFromThread(PictureBox pic, Size s, Point p);
public void animatePub(PictureBox pic, Size s, Point p)
{
pic.Size = s;
pic.Location = p;
Invalidate();
}
private void pictureBox15_MouseEnter(object sender, EventArgs e)
{
Size s = this.pictureBox15.Size;
var loc = pictureBox15.Location;
(new Thread(delegate ()
{
Thread.CurrentThread.IsBackground = true;
try
{
while (s.Width < aSize[3].Width + 6) //asize - массив из исходных размеров картинок для анимации (их несколько)
{
s.Width += 2;
s.Height += 1;
loc.X -= 1;
loc.Y -= 2;
Invoke(new sendMessageFromThread(animatePub), new object[] { pictureBox15, s, loc });
Thread.Sleep(35);
}
}
catch
{
Invoke(new sendMessageFromThread(animatePub), new object[] { pictureBox15, aSize[3], loc });
}
})).Start();
}