1. 程式人生 > >WINFROM窗體實現圓角

WINFROM窗體實現圓角

首先我們先看看效果圖

接下來我們看看怎麼實現

先把窗體的FromBorderStyle屬性改成None。

接下來登入窗體程式碼程式碼:

新增一個窗體Paint事件,引用using System.Drawing.Drawing2D;

private void frmLogin_Paint(object sender, PaintEventArgs e)
{
Type(this, 25, 0.1);
}

private void Type(Control sender, int p_1, double p_2)
{
GraphicsPath oPath = new GraphicsPath();
oPath.AddClosedCurve(new Point[] {
new Point(0, sender.Height / p_1),
new Point(sender.Width / p_1, 0),
new Point(sender.Width - sender.Width / p_1, 0),
new Point(sender.Width, sender.Height / p_1),
new Point(sender.Width, sender.Height - sender.Height / p_1),
new Point(sender.Width - sender.Width / p_1, sender.Height),
new Point(sender.Width / p_1, sender.Height),
new Point(0, sender.Height - sender.Height / p_1) }, (float)p_2);
sender.Region = new Region(oPath);
}

再新增窗體Resize事件

private void frmLogin_Resize(object sender, EventArgs e)
{
Type(this, 25, 0.1);
}