当前位置:编程学习 > C#/ASP.NET >>

C#在窗口上用鼠标画线并填充

namespace WindowsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        Point p1;
        Point p2;
        ArrayList mya = new ArrayList();
        private void Form1_MouseDown(object sender, MouseEventArgs e)
        {
            Point p = new Point(e.X,e.Y);
            if (p1.X == 0 && p1.Y == 0)
            {
                p1 = p;
                mya.Add(p1);
            }
        }

        private void Form1_MouseUp(object sender, MouseEventArgs e)
        {
            Point p = new Point(e.X,e.Y);
            p2 = p;
            mya.Add(p2);
            Graphics g = this.CreateGraphics();
            g.DrawLine(Pens.Red,p1,p2);
            p1 = p2;
        }

        private void button1_Click(object sender, EventArgs e)
        {
            int number = mya.Count;
            Point[] myp = new Point[number];
            Object[] ob = new Object[number];
           
            for (int i = 0; i < number; i++)
            {
                ob[i] = mya[i];
                myp[i] = (Point)ob[i];
            }
            Graphics g = this.CreateGraphics();
            g.DrawPolygon(Pens.Red, myp);
            g.FillPolygon(Brushes.Red,myp);
        }
    }
}

    
补充:软件开发 , C# ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,