使用坐标绘制一条线

问题描述:

我有一个X,Y坐标列表,我想在程序中将这些列出来。哪种功能最适合使用?在扩展从文本文件读取之前,我将在一组基坐标中对代码进行硬编码。我能够做到这一切,但是我在网上看到的所有功能只用于2 x,y坐标,我的X,Y坐标需要大约10个左右的坐标。如果有人能帮助我,将不胜感激!使用坐标绘制一条线

+0

你使用的是什么UI库?的WinForms? WPF? ASP.NET?还有别的吗? – svick 2012-03-05 23:37:14

+0

现在Winforms,但我可能更改为WPF,因为我更喜欢它! – DommyCastles 2012-03-06 00:01:16

您需要使用GDI +和Graphics对象。基本上,你会覆盖任何ControlOnPaint方法,而且有些画你的观点是这样的:

Graphics g = e.Graphics; 

Point p1 = new Point(20, 20); 
Point p2 = new Point(50, 50); 

g.DrawLine(Pens.Red, p1, p2); 
g.FillEllipse(Pens.Red, p1.X - 2, p1.Y - 2, 4, 4); 
g.FillEllipse(Pens.Red, p2.X - 2, p2.Y - 2, 4, 4); 

...等等。这个特殊的例子在坐标(20,20)和(50,50)之间绘制了一条直线,每条直线上有一个4像素直径的圆。

+0

非常感谢!我可以附加到一个按钮点击? – DommyCastles 2012-03-05 23:50:55

+1

@ user1251019:是的!但你不应该。相反,只要在你的类中保存某种状态或数据变量,并调用'this.Invalidate();'来告诉图形绘制。 – Ryan 2012-03-05 23:51:59

+0

哦,是的,应该想到我自己!傻我!非常感谢! – DommyCastles 2012-03-06 00:00:44