1. 程式人生 > >C# 任意形狀按鈕控制元件 實現簡單實用

C# 任意形狀按鈕控制元件 實現簡單實用


上圖的6變形按鈕,是用下面的程式碼是通過多邊形繪製出來的按鈕形狀,可以修改 Point[] 引數實現任意形狀的按鈕。

private void Form1_Load(object sender, EventArgs e)

        {
            int OffSetX = button1.Size.Width;
            int OffSetY = button1.Height;
            System.Drawing.Drawing2D.GraphicsPath path = new System.Drawing.Drawing2D.GraphicsPath();
            Point[] points = new Point[8];




            points[0] = new Point(OffSetX / 3 , 0);
            points[1] = new Point(0, OffSetY / 3);
            points[2] = new Point(0, OffSetY * 2 / 3);
            points[3] = new Point(OffSetX / 3, OffSetY);
            points[4] = new Point(OffSetX * 2 / 3, OffSetY);
            points[5] = new Point(OffSetX, OffSetY *2/ 3);
            points[6] = new Point(OffSetX, OffSetY / 3);
            points[7] = new Point(OffSetX *2/ 3 , 0);
            
              path.AddPolygon(points);
            this.button1.Region = new Region(path);
            button1.BackColor = Color.SlateGray;
            button1.FlatStyle = FlatStyle.Flat;

            button1.FlatAppearance.BorderSize = 0;

     }

安靜安靜安靜安靜安靜安靜安靜安靜安靜