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)

jeudi 21 octobre 2004 à 04:00:29 | Scintillement graphique

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

jeudi 21 octobre 2004 à 08:58:58 | Re : Scintillement graphique

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);

jeudi 21 octobre 2004 à 09:23:41 | Re : Scintillement graphique

magic_Nono

Membre Club
ou alors utilise

ValidateRect

++
Magic Nono: l'informagicien!

jeudi 21 octobre 2004 à 15:08:33 | Re : Scintillement graphique

coyote

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

Merci beaucoup
coyote



Cette discussion est classé dans : dc, memdc, rcclient, membmp, backbrush


Répondre à ce message

Sujets en rapport avec ce message

pd de cdc en mémoire :( [ par CoyoteVsBeepBeep ] hello,j'ai un petit soucis avec du graphisme.j'ai une boite de dialogue dans laquelle je veux faire une petite animation (background + une animation p Double buffering sur une CDialog (dessin sous MFC) [ par jul39dole ] Bonjour, je dois dessiner sur une boite de dialogue modale en MFC. Pour résoudre le problème de "scintillement", j'ai appliqué le double buffering. Se Lenteur 3 [ par SAKingdom ] Pour résumé, j'ai fait une petite DLL graphique 2D et j'avais (et j'ai toujours) un problème écransant de lenteur. J'utilisait SetPixel (j'utilise tou Créer un DC privé [ par GEDEON ] bonjour...    J'utilise les objets GDI dans un CView et j'aimerais utiliser un DC privé.... D'après MSDN, je dois changer la variable membre "style" d comment créer une GPO avec l'interface IGroupPolicyObject [ par ranouna ] bonjour tout le mondeje code en C++, je voudrais créer une GPO avec IGroupPolicyObjectmon code est le suivant : CoInitialize(NULL); IGroupPolicyObject Pb d'affichage [ par mrous ] Bonjour,Je souhaite afficher des graphiques ds une boite de dialogue. Pour cela, j'utilise une libraire déja ecrite que j'ai trouvé sur le web cependa Getpixel et Setpixel trop lents! :( [ par Omeya ] Bonsoir à tous,Depuis quelques temps, j'essaye de réaliser un capteur d'écran en temps réel et les seuls instructions que je sais vraiment utiliser so Double buffer win32 [ par Stepharcher ] Bonjour à tous !J'ai récemment tenté le double buffer sous window avec GDI... Mais je ne comprend pas trop mon erreur. Quand je dessine directement su Sélection d'une bitmap dans un DC [ par vecchio56 ] Bonjour a tousJ'explique mon problème:Je charge une bitmap 8 bits à partir d'un fichier (je n'utilise pas LoadBitmap, qui crée une bitmap 32 bits en m Texte personnalisé [ par Ilmen_ ] Voila, j'ai un problème avec le code ci dessous, qui permet d'afficher un texte personnalisé (taille, couleur, etc.). On me signale une erreur sur la


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

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



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,499 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.