Ca dépend de ce que tu veux faire.
Si tu veux dessiner tout les lignes avec un point en commun (ligne1 a pour coordonée (point1,point2) ligne2(point2,point3) ... )
Dans ton OnPaint tu peux faire :
Code :
- if (teller >0)
- {
- for (int index = 0; index < i; index++)
- {
- Graphics graphicsObject = e.Graphics;
- graphicsObject.DrawLine(pen, (Point)points[index], (Point)points[index + 1]);
- }
-
- i = i + 1;
- //teller = 0;
- }
|
ou sinon tu peux faire (ligne1 a pour coordonée (point1,point2) ligne2(point3,point4) ... ):
Code :
- if (teller >0)
- {
- for (int index = 0; index < i; index++)
- {
- Graphics graphicsObject = e.Graphics;
- graphicsObject.DrawLine(pen, (Point)points[index], (Point)points[index + 1]);
- index++;
- }
-
- i = i + 1;
- //teller = 0;
- }
|
Sachant que ton code peux être simplifié, teller et i ne serve en réalité à rien le code complet :
Code :
- private System.Collections.ArrayList points = new System.Collections.ArrayList();
- Pen pen = new Pen(Color.DarkBlue);
- private void drawPanel_Paint(object sender, PaintEventArgs e)
- {
- if (points.Count > 1)
- {
- for (int index = 0; index < points.Count - 1; index++)
- {
- Graphics graphicsObject = e.Graphics;
- graphicsObject.DrawLine(pen, (Point)points[index], (Point)points[index + 1]);
- //index++;
- }
- }
- }
- private void drawPanel_MouseDown(object sender, MouseEventArgs e)
- {
- points.Add(new Point(e.X, e.Y));
- this.Invalidate();
- }
|