GDI+绘制圆角矩形

来源:互联网 发布:js模拟进度条 编辑:程序博客网 时间:2024/06/06 17:29

绘制圆角矩形

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);  






0 0
原创粉丝点击