第1个回答 推荐于2018-03-30
using System.Drawing.Drawing2D;
protected override void OnPaint( System.Windows.Forms.PaintEventArgs e )
{
GraphicsPath oPath = new GraphicsPath();
int x=0;
int y=0;
int w=Width;
int h=Height;
int a=40;
Graphics g=CreateGraphics();
oPath.AddArc(x,y,a,a,180,90);
oPath.AddArc(w-a,y,a,a,270,90);
oPath.AddArc(w-a/2,h-a/2,a/2,a/2,0,90);
oPath.AddArc(x,h-a,a,a,90,90);
oPath.CloseAllFigures();
Region=new Region(oPath);
}本回答被网友采纳
第3个回答 2018-05-13
using System.Drawing.Drawing2D;
protected override void OnPaint( System.Windows.Forms.PaintEventArgs e )
{
GraphicsPath oPath = new GraphicsPath();
int x=0;
int y=0;
int w=Width;
int h=Height;
int a=40;//这是圆角的半径
Graphics g=CreateGraphics();
oPath.AddArc(x,y,a,a,180,90);
oPath.AddArc(w-a,y,a,a,270,90);
oPath.AddArc(w-a,h-a,a,a,0,90); //这个角应该是这样的
oPath.AddArc(x,h-a,a,a,90,90);
oPath.CloseAllFigures();
Region=new Region(oPath);
}