绘制圆角矩形
Pen* p = new Pen(c, (REAL)nSize);
// 画矩形上面的边
graphics.DrawLine(p,rc.left + width / 2, rc.top, rc.right - width / 2, rc.top);
//画矩形下面的边
graphics.DrawLine(p,rc.left + width / 2, rc.bottom,rc.right - width / 2,rc.bottom);
//画矩形左面的边
graphics.DrawLine(p,rc.left, rc.top + height / 2, rc.left, rc.bottom - height / 2);
//画矩形右面的边
graphics.DrawLine(p,rc.right, rc.top + height / 2, rc.right, rc.bottom - height / 2);
//画矩形左上角的圆角
graphics.DrawArc(p,rc.left, rc.top, width, height, 180, 90);
//画矩形右下角的圆角
graphics.DrawArc(p,rc.right- width, rc.bottom - height, width, height, 360, 90);
//画矩形右上角的圆角
graphics.DrawArc(p,rc.right - width, rc.top, width, height, 270, 90);
//画矩形左下角的圆角
graphics.DrawArc(p,rc.left, rc.bottom - height, width, height, 90, 90);
delete p;
填充圆角矩形,其中width和height为圆角的大小
Brush* b = new SolidBrush(c);
graphics.FillRectangle(b,rc.left,rc.top+height,rc.right - rc.left,rc.bottom - rc.top - height*2);
graphics.FillRectangle(b,rc.left+width,rc.top,rc.right - rc.left-width*2,rc.bottom - rc.top);
graphics.FillPie(b,rc.left,rc.top,width*2+2,height*2+2,180,90);
graphics.FillPie(b,rc.right-(width*2+2),rc.bottom-(height*2+2),width*2+2,height*2+2,360,90);
graphics.FillPie(b,rc.right-(width*2+2),rc.top,(width*2+2),(height*2+2),270,90);
graphics.FillPie(b,rc.left,rc.bottom-(width*2+2),(width*2+2),(height*2+2),90,90);
7818

被折叠的 条评论
为什么被折叠?



