private void Draw(Graphics graphics, Control control)
{
float X = float.Parse(control.Width.ToString()) - 1;
float Y = float.Parse(control.Height.ToString()) - 1;
PointF[] pointfs = {
new PointF(2, 0),
new PointF(X-2, 0),
new PointF(X-1, 1),
new PointF(X, 2),
new PointF(X, Y-2),
new PointF(X-1, Y-1),
new PointF(X-2, Y),
new PointF(2, Y),
new PointF(1, Y-1),
new PointF(0, Y-2),
new PointF(0, 2),
new PointF(1, 1)
};
GraphicsPath path = new GraphicsPath();
path.AddLines(pointfs);
Pen pen = new Pen(Color.FromArgb(150, Color.Blue), 1);
pen.DashStyle = DashStyle.Solid;
graphics.DrawPath(pen, path);
}
首先要把控件注册一个事件:控件名称.Paint+=事件名称,然后把以上函数进行传参,如:Draw(e.Graphics, this.control);

本文介绍了一个使用C#绘制不规则图形的方法。通过定义一系列坐标点并利用GraphicsPath类创建路径,最终使用Pen类绘制出所需的图形。文章还提及了如何将绘制函数与控件的Paint事件相结合。

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



