Bonjour � tous,
J'ai une boite de dialogue, et un petit rectangle de type CStatic dans un coin. Je voudrais programmer une petite animation dans ce rectangle. Pour ce faire, j'utilise un Timer (SetTimer et OnTimer) et CDC::FillSolidRectangle.
Le principe est que je dessine une rectangle blanc sur toute la surface, et tout de suite apr�s, un petit rectangle rouge, de fa�on � ce que l'on voie un petit rectangle rouge se d�placer � l'int�rieur d'un rectangle blanc.
Et je ne comprends pas: l'affichage est affreux!! Mon petit rectangle rouge est constamment strill� de ligne blanches, comme si le buffer d'affichage n'arrivait pas � suivre.
Comment puis-je am�liorer cet affichage? Est-ce qu'il ya des m�thodes plus efficace?
merci.
voici mon code:
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6 void CTestTimer2Dlg::fnUpdateFrame() //fonction appelée par le Timer toute les 40ms (25 fps) { //je passe les calculs des x et y, mais ils sont justes et extrêmement simples (donc rapides) mpMainDc->FillSolidRect(x0, y0, xM,yM, mcrWhite); mpMainDc->FillSolidRect(x1,y1,x2,y2, mcrRed); }
Partager