begin process at 2008 07 19 02:25:34
1 212 688 membres
27 nouveaux aujourd'hui
14 165 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Scintillement graphique [ Archives / Graphique ] (coyote)

Scintillement graphique le 21/10/2004 04:00:29

coyote
Je developpe un appli sous VC++6 (avec les MFC).

Le probleme est que l'affichage graphique scintille. J'ai pourtant utilise un double buffer.

Voici l'extrait de la methode OnPaint() de ma fenetre de dialog:

//...
CPaintDC dc(this);
CRect rcClient;
GetClientRect(rcClient);

CDC memDC;
memDC.CreateCompatibleDC(&dc);

CBitmap memBmp;
memBmp.CreateCompatibleBitmap(&dc, rcClient.Width(), rcClient.Height());
CBitmap* pOldBmp = memDC.SelectObject(&memBmp);

// effacement du fond
CBrush backBrush;
backBrush.CreateSolidBrush(RGB(255, 255, 255));
memDC.FillRect(rcClient, &backBrush);
backBrush.DeleteObject();

// recopie du contexte en mémoire
dc.BitBlt(0, 0, rcClient.Width(), rcClient.Height(), &memDC, 0, 0, SRCCOPY);

// destruction contexte d'affichage
memDC.SelectObject(pOldBmp);
memDC.DeleteDC();
memBmp.DeleteObject();
//...

Cette methode est appelee a chaque mouvement de souri (avec la methode invalidate() ) et ne fait que remplir la fenetre de blanc (pour aleger la question sur ce forum). Et ca SCINTILLE !!!
Ou est le probleme?

Merci

Re : Scintillement graphique le 21/10/2004 08:58:58

ymca2003
Réponse acceptée !
lorsque tu fait InValidateRect, il ne faut pas que le système redessine le fond (puisque tu le fait dans OnPaint) :
InvalidateRect(NULL, FALSE);

Re : Scintillement graphique le 21/10/2004 09:23:41

magic_Nono
Membre Club
ou alors utilise

ValidateRect

++
Magic Nono: l'informagicien!

Re : Scintillement graphique le 21/10/2004 15:08:33

coyote
OK, c'etait ca ....
ca marche nickel
C'est pas evident VC++ sans tutorial.

Merci beaucoup
coyote


Classé sous : dc, memdc, rcclient, membmp, backbrush

Participer à cet échange

Livres en rapport

Pub



Appels d'offres

Dessins techniques
Budget : 60€
Animation Flash - Doma...
Budget : 370€
Application flash medi...
Budget : 1 000€

CalendriCode

Juillet 2008
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Téléchargements

Logiciels à télécharger sur le même thème :

Boutique

Boutique de goodies CodeS-SourceS