c# – 如何在对象上画一条虚线?
发布时间:2020-12-15 06:24:07 所属栏目:百科 来源:网络整理
导读:我在 Windows窗体上绘制一条控件,如下所示: // Get Graphics object from chart Graphics graph = e.ChartGraphics.Graphics; PointF point1 = PointF.Empty; PointF point2 = PointF.Empty; // Set Maximum and minimum points point1.X = -110; point1.Y
我在
Windows窗体上绘制一条控件,如下所示:
// Get Graphics object from chart Graphics graph = e.ChartGraphics.Graphics; PointF point1 = PointF.Empty; PointF point2 = PointF.Empty; // Set Maximum and minimum points point1.X = -110; point1.Y = -110; point2.X = 122; point2.Y = 122; // Convert relative coordinates to absolute coordinates. point1 = e.ChartGraphics.GetAbsolutePoint(point1); point2 = e.ChartGraphics.GetAbsolutePoint(point2); // Draw connection line graph.DrawLine(new Pen(Color.Yellow,3),point1,point2); 我想知道是否可以画一条虚线(虚线)而不是一条常规的实线? 解决方法
一旦您定义了破折号的
figure out the formatting,这很简单:
float[] dashValues = { 5,2,15,4 }; Pen blackPen = new Pen(Color.Black,5); blackPen.DashPattern = dashValues; e.Graphics.DrawLine(blackPen,new Point(5,5),new Point(405,5)); 浮点数组中的数字表示不同颜色的短划线长度.所以,对于一个2像素(黑色)的简单破折号,每个两个,你的aray将看起来像:{2,2}然后重复模式.如果您想要5幅宽度为2像素的虚线,则可以使用{5,2} 在你的代码中,它将如下所示: // Get Graphics object from chart Graphics graph = e.ChartGraphics.Graphics; PointF point1 = PointF.Empty; PointF point2 = PointF.Empty; // Set Maximum and minimum points point1.X = -110; point1.Y = -110; point2.X = 122; point2.Y = 122; // Convert relative coordinates to absolute coordinates. point1 = e.ChartGraphics.GetAbsolutePoint(point1); point2 = e.ChartGraphics.GetAbsolutePoint(point2); // Draw (dashed) connection line float[] dashValues = { 4,2 }; Pen dashPen= new Pen(Color.Yellow,3); dashPen.DashPattern = dashValues; graph.DrawLine(dashPen,point2); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |