Sur le "CreateGraphics.DrawLine" en vb 2008

sagessekaye Messages postés 5 Date d'inscription vendredi 14 août 2009 Statut Membre Dernière intervention 14 mai 2013 - 15 déc. 2009 à 17:44
cs_pingouin84k Messages postés 68 Date d'inscription vendredi 28 octobre 2005 Statut Membre Dernière intervention 9 janvier 2011 - 28 déc. 2009 à 23:31
salut,
je suis présentemment entrain d'implémenter un problème qui me demande l'utilisation de Line, soit "CreateGraphics.DrawLine" en VB 2008;
mais il se pose un problème : ces lines (lignes) ne reste ou ne resiste pas lorsque par exemple il y a une boite de dialogue qui passe déssus ou lorsque on reduit le formulaire.

pourtant, il me faut l'utiliser! comment faire?svp, c'est urgent...merci
sagessekayemba@yahoo.fr

2 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
16 déc. 2009 à 12:44
les dessiner au Paint de ta Form

ou activer l'equivalent a l'autoredraw de VB6

Renfield - Admin CodeS-SourceS - MVP Visual Basic
0
cs_pingouin84k Messages postés 68 Date d'inscription vendredi 28 octobre 2005 Statut Membre Dernière intervention 9 janvier 2011
28 déc. 2009 à 23:31
Salut,
Désolé pour le retard. Je vais pas souvent sur VBFrance.

J'ai eu le même problème, et j'ai fini par trouver.

Admettons que tu dessines tes lignes sur PctBx (une PictureBox toute simple),
Déclare comme suit :

Dim bmp as New Bitmap(PctBx.Width, PctBx.Height)
Dim g as Graphics
g = Graphics.FromImage(bmp)

'là tu fais tout ce que tu veux avec ton graphics "g" entre autres :
g.DrawLine(New Pen(Color.Black), 0, 0, 300, 300)
'[...]

'puis pour rendre persistant l'image
PctBx.BackgroundImage = bmp
PctBx.Refresh()


Voilou en esperant ne pas arriver trop tard. Ca réglera même tes problèmes de scintillement si tu en avais. Si c'est pas le cas, essai de déclarer dans l'évement Load_Form, Me.DoubleBuffered = True.

Bon code !!!
@+
0
Rejoignez-nous