Supprimer un rectangle déssiné

lafolle24320 Messages postés 406 Date d'inscription samedi 26 mars 2005 Statut Membre Dernière intervention 29 juin 2009 - 29 nov. 2006 à 21:48
cs_louis14 Messages postés 793 Date d'inscription mardi 8 juillet 2003 Statut Membre Dernière intervention 10 février 2021 - 30 nov. 2006 à 09:38
Bonjour à tous ,
 voici mon pb : en fait je dessine un rectangle avec
Rectangle( hdc, rectMove.left, rectMove.top, rectMove.right, rectMove.bottom );
si mon bool deplace est à vrai
Mais lorsque bool est à faux je ne déssine pas ce rectangle.... mais comment faire pour supprimer ce rectangle qui a été déssiner précédement.
En fait si je ne supprime pas ce rectangle pour la suite de mon programme je plante.

merci de votre aide
lafolle

2 réponses

Ombitious_Developper Messages postés 2333 Date d'inscription samedi 28 février 2004 Statut Membre Dernière intervention 26 juillet 2013 38
30 nov. 2006 à 00:47
Salut:

Supprimer un rectangle revient à le dessiner avec le la même couleur du fond de la fenêtre.

Donc tu dois changer la couleur du "HPEN" de ton "HDC":
Je suppose que le fond de ta fenêtre est blanc.

HPEN hErasePen = createPen (PS_SOLID, 1, RGB (0xFF, 0xFF, OxFF));
HPEN hColorPen = (HPEN)hdc.SelectObject (hErasePen);

// Tu dessines ton rectangle
// ...

// Tu récupère ton "HPEN" coloré
hdc.SelectObject (hColorPen);

Je ne comprends pas pourquoi ton programme se plante à cause d'un simple rectangle dessiné?
0
cs_louis14 Messages postés 793 Date d'inscription mardi 8 juillet 2003 Statut Membre Dernière intervention 10 février 2021 8
30 nov. 2006 à 09:38
vois aussi du côté de la fonction SetROP2 avec un certain paramétrage tu peux effacer le rectangle sans te souscier de la couleur de fond.

louis14
0
Rejoignez-nous