J'essaie actuellement de créer un jeu simple dans Borland C++ Builder 6 mais j'ai certains problèmes avec l'affichage des graphiques. Par exemple, voici le code faisant rebondir horizontalement un graphique contenu dans ImageList1:
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
Canvas->Pen->Color = clMaroon;
Canvas->Brush->Color = clBlack;
Canvas->Rectangle(0, 0, Width, Height);
if (posx>=Width-16) direction=1;
if (posx<=-16) direction=0;
if (!direction) posx+=4;
else posx-=4;
ImageList1->Draw(Canvas,posx,32,0,1);
}
Tout fonctionne bien mais on peut remarquer une bande noire passant par dessus le graphique par intermittence, montrant que le canvas se rafraichit après toutes modifications et non pas seulement à chaque paint(). Comment faire pour que le canvas se rafraishisse seulement après y avoir mis tous les graphiques?