C#窗体应用程序下,如何实现wingdows下画图程序中的划直线的功能,最好能写出代码来,在说明一下原理是什么?先谢谢大家!

解决方案 »

  1.   

    在窗体的OnPaint事件中
    {
    e.Graphics.DrawLine
    }
      

  2.   

        // Create pen.
        Pen blackPen = new Pen(Color.Black, 3);
                 
        // Create points that define line.
        Point point1 = new Point(100, 100);
        Point point2 = new Point(500, 100);
                 
        // Draw line to screen.
        e.Graphics.DrawLine(blackPen, point1, point2);
      

  3.   

     这是两种方法画直线,我运行过,前面自动生成的就省了,拉两个button就成
    private void button1_Click(object sender, EventArgs e)
            {
                Graphics g = this.CreateGraphics();
                Pen myPen=new Pen(Color.Black,4);
                Point pt1=new Point(30,30);
                Point pt2=new Point(160,30);
                g.DrawLine(myPen,pt1,pt2);
            }        private void button2_Click(object sender, EventArgs e)
            {
                Graphics g = this.CreateGraphics();
                Pen myPen = new Pen(Color.Red, 4);
                g.DrawLine(myPen,30,60,160,60);
            }
      

  4.   

    private void button1_Click(object sender, EventArgs e)
      {
      Graphics g = this.CreateGraphics();
      Pen myPen=new Pen(Color.Black,4);//实例画一个宽度为4的黑色笔
      Point pt1=new Point(30,30);//实例化开始点
      Point pt2=new Point(160,30);//实例化终点
      g.DrawLine(myPen,pt1,pt2);//画直线
      }  private void button2_Click(object sender, EventArgs e)
      {
      Graphics g = this.CreateGraphics();
      Pen myPen = new Pen(Color.Red, 4);//实例画一个宽度为4的黑色笔  g.DrawLine(myPen,30,60,160,60);//画直线
      }
    其中的数字可以按需要修改,比笔的颜色也可以按需要改动
      

  5.   

    先谢谢大家的关注了,不过windows下的画图中的直线是可以在画板的任何位置划任意长度的直线,实例化的话可以直接把坐标加到Drawline中就行了,这样与画图中所实现的画直线的功能还有一些差异,希望大家继续发言啊。