У меня есть проект форм windows об анимации движения прямоугольников, но все анимации сопровождаются некоторым количеством мерцания, в основном от границы нарисованного прямоугольника. Я уже включил двойную буферизацию для формы, и, хотя это помогло, это не решило мою проблему. Могу ли я что-нибудь исправить с помощью кода? Ниже приведен фрагмент моего кода, который занимается рисованием прямоугольников. Я пропустил код, который предоставляет прямоугольники для рисования, и заменил его резюме, поскольку я не думаю, что он имеет отношение к моему вопросу. Все это делается в методе, которому передается экземпляр формы, в которой он dr aws (DrawForm), объект Graphics (g), объект Pen (pen) и объект Bru sh (bru sh ).
for(int i = 0; i < animation_frames; i++)
{
for(int b = 0; b < objects.Count; b++)
{
/*Summary: Checks what each object is doing for this frame. Populates a RectangleF array
called recs with rectangles corresponding to the objects' new positions.
*/
}
DrawForm.Refresh();
g.FillRectangles(brush, recs);
g.DrawRectangles(pen,recs);
System.Threading.Thread.Sleep(20);
}