Простая анимация в WinForms

В некоторых ситуациях быстрее windows-forms и удобнее не рисовать с помощью dot-net события рисования, а получать winforms объект Graphics из элемента winform управления/формы и рисовать .net-framework "на" этом. Это может вызвать .net некоторые проблемы с непрозрачностью/сглаживанием/текстом animations и т. д., но может стоить windows-form проблем с точки зрения отсутствия animations необходимости перекрашивать scaleanimation весь шабанг. Что-то вроде:

private void AnimationTimer_Tick(object sender, EventArgs args)
{
    // First paint background, like Clear(Control.Background), or by
    // painting an image you have previously buffered that was the background.
    animationControl.CreateGraphics().DrawImage(0, 0, animationImages[animationTick++])); 
}

Я animations сам использую это в некоторых dotnet элементах управления и буферизировал winform изображения, чтобы «очистить» фон, когда animated интересующий объект перемещается dotnet или его нужно удалить.

.net

winforms

animation

2022-10-21T11:39:29+00:00