Drawstring sans superposition

jpcohen0
Messages postés
4
Date d'inscription
mardi 24 mai 2005
Statut
Membre
Dernière intervention
10 février 2006
- 9 févr. 2006 à 21:54
Lutinore
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
27 octobre 2012
- 10 févr. 2006 à 18:52
Salut a tous,
je m'amuse a afficher l'heure sur une bitmap reactualisé dans une picturebox via un timer.
J'affiche le texte via la methode drawstring.
Le probleme est que le texte precededent n'est pas effacé et les caractères se superposent.
J'ai essayé d'afficher des espaces mais ça ne marche pas. L'absence de pixel est directement traduite comme du transparent. C curieux qui plus est en mode 24bpp donc pas de canal alpha a priori :s.

Si vous aveiz une idée ça serait cool...

4 réponses

Lutinore
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
27 octobre 2012
42
9 févr. 2006 à 22:50
Salut, il faut redessiner le fond, en général avec un contrôle on appelle la Invalidate( ) qui se charge de demander au contrôle de se redessiner, sur un bitmap c'est à toi de le faire.
0
TheSaib
Messages postés
2368
Date d'inscription
mardi 17 avril 2001
Statut
Modérateur
Dernière intervention
26 décembre 2007
23
10 févr. 2006 à 11:41
Ou avant ton drawstring tu fais un graphics.Clear(tacouleur)

::|The S@ib|::
MVP C#.NET
0
jpcohen0
Messages postés
4
Date d'inscription
mardi 24 mai 2005
Statut
Membre
Dernière intervention
10 février 2006

10 févr. 2006 à 17:15
Lutinor : Je fais un invalidate de toute ma pixbox, tu as l'air de dire qu'il u aurait une alternative a invalidate speciale bitmap ?

TheSaib : La methode clear ne me permet pas de selectioner la region a effacer. Or j'ai pas envie d'effacer toute l'image. Si il existe un moyen pour selectionner la zone a effacer et puis de redessiner l'heure dessus ça pourrait le faire.
0
Lutinore
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
27 octobre 2012
42
10 févr. 2006 à 18:52
L'alternative c'est à toi de la faire, on ne peut pas éffacer un bitmap, il faut donc, redessiner le bitmap et par dessus afficher l'heure, mais pour des raisons de performances on redessine uniquement la partie du bitmap qui est altérée.
0