Effacer une forme d'un graphics

godefrw Messages postés 56 Date d'inscription lundi 13 septembre 2004 Statut Membre Dernière intervention 20 mars 2006 - 29 sept. 2004 à 12:15
bafdili Messages postés 1 Date d'inscription mercredi 16 janvier 2008 Statut Membre Dernière intervention 25 décembre 2008 - 25 déc. 2008 à 19:16
Bonjour, je cherche à effacer une forme (par exemple une droite) de mon objet graphics sans avoir à effacre tout mon graphics et retracer tout ce qui doit rester:
pour l'instant je procède de la mainère suivante:

je crée un objet graphic:
private System.Drawing.Graphics dc;
dc = this.CreateGraphics();

je trace des formes:
dc.DrawLine(my_pen, points[0],points[1]);
dc.DrawLine(my_pen, points[2],points[3]);

et lorsque je veux effacer un élément je fais:
dc.Clear(this.BackColor);
dc.DrawLine(my_pen, points[2],points[3]);

Y a t-il un moyen de procéder autrement?

Ced
A voir également:

8 réponses

cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
30 sept. 2004 à 14:32
comme ça :)
Graphics g = Graphics.FromImage(monBitmap);


Cocoricoooooooo !!!!
1
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
29 sept. 2004 à 13:47
a ma connaissance non
le systeme de dessin ne garde pas de trace des actions effectuées, juste le resultat de ces actions

Cocoricoooooooo !!!!
0
godefrw Messages postés 56 Date d'inscription lundi 13 septembre 2004 Statut Membre Dernière intervention 20 mars 2006
29 sept. 2004 à 14:25
En fait cela me pose un probleme car je cherche à faire se déplacer un curseur (que je dessine sous forme de ligne). Je suis obligé d'effacer le graphics pour effacer le curseur, de retracer tout le graphique (tous les éléments fixes) et de replacer le curseur à sa nouvelle position. Ca marche mais l'image est sacadée...
Ced
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
29 sept. 2004 à 17:40
pour le coup du curseur je saisis pas trop le rapport avec le dessin

par contre pour les saccade tu devrais paser par un buffer :
tu definis un objet Bitmap de la même taille que ta zone de dessin (tu ne le redefini que si la taille change, pas a chaque dessin) et tu crée un graphics dessus
et a chaque "update" :
tu dessines tout sur le bitmap puis tu dessines ce bitmap (DrawImageUnscaled) sur ta zone de dessin

Cocoricoooooooo !!!!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
godefrw Messages postés 56 Date d'inscription lundi 13 septembre 2004 Statut Membre Dernière intervention 20 mars 2006
30 sept. 2004 à 10:35
Merci pour les conseils, je vais voir ça tout de suite.
Sinon pour le curseur en fait je veux qu'un curseur se déplace sur une partition de musique au fur et à mesure de la lecture d'un fichier son. Peut-être n'est ce pas la bonne manière de programmer ça...

Ced
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
30 sept. 2004 à 10:43
ah ok
je pensais que tu parlais du pointeur de souris lol

Cocoricoooooooo !!!!
0
godefrw Messages postés 56 Date d'inscription lundi 13 septembre 2004 Statut Membre Dernière intervention 20 mars 2006
30 sept. 2004 à 13:07
Peux-tu me donner un coup de main pour les Bipmap (je débute en c# et j'en ai jamais utilisé). Comment créer un graphics sur un bitmap?
Ced
0
bafdili Messages postés 1 Date d'inscription mercredi 16 janvier 2008 Statut Membre Dernière intervention 25 décembre 2008
25 déc. 2008 à 19:16
salam !
voila j'avais le méme probléme avec un trait que je devais dessiner sur une form
ben le truc que g fait pr remedier au probléme c simplement jouyer avec la visibilité de la fenétre this.visible false puis this.visible true
c trés banale mais ça a fait la faire pr moi
alors je la partage ou cas ou ça vous interesses :)
0
Rejoignez-nous