cs_ShayW
Messages postés3253Date d'inscriptionjeudi 26 novembre 2009StatutMembreDernière intervention 3 décembre 2019
-
20 avril 2010 à 13:34
cs_ShayW
Messages postés3253Date d'inscriptionjeudi 26 novembre 2009StatutMembreDernière intervention 3 décembre 2019
-
22 avril 2010 à 15:51
Salut tout le monde
Sur ma form j'ai plaçé un control panel
aussi j'ai écrit une sub qui trace une ligne à l'intérieur du panel.
Private Sub draws()
Dim gr As System.Drawing.Graphics
Dim mypen As Pen
gr = Me.Panel1.CreateGraphics
mypen = New Pen(Color.Chocolate, 3)
gr.DrawLine(mypen, 20, 20, 700, 700)
mypen.Dispose()
gr.Dispose()
End Sub
Private Sub Form1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint
draws()
End Sub
1 pourquoi quand j'éxecute le programme je ne vois la ligne tracée très brievemment.Si je restore form ou minimize et réagrandis la ligne
apparait.
2 Si à la place de gr = Me.Panel1.CreateGraphics
j'écrit gr = Me.CreateGraphics
la ligne apparait immédiatement bien sur à une place différente
3 Si je place un picturebox à la place du panel
je ne vois jammais la ligne
lesdis
Messages postés403Date d'inscriptionmercredi 19 avril 2006StatutMembreDernière intervention 7 août 2020 21 avril 2010 à 09:52
Bonjour,
Le panel ne se redessine pas forcément en même temps que ta form.
Le mieux est de faire une classe dérivée de Panel et de faire un Override sur l'évènement OnPaint.
lesdis
Messages postés403Date d'inscriptionmercredi 19 avril 2006StatutMembreDernière intervention 7 août 2020 21 avril 2010 à 09:55
Ou bien essai de te mettre dans l'evènement Paint du Panel :
Private Sub draws(gr as System.Drawing.Graphics)
Dim mypen As Pen
mypen = New Pen(Color.Chocolate, 3)
gr.DrawLine(mypen, 20, 20, 700, 700)
End Sub
Private Sub Panel1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Panel1.Paint
draws(e.Graphics)
End Sub
Pas besoin de mettre de dispose, le Garbage Collector est là pour ca, surtout que de supprimer un graphic où l'on vient de dessiner dessus...
Bonne Prog
Vous n’avez pas trouvé la réponse que vous recherchez ?