Graphics gr;
gr = CreateGraphics();
Pen p = new Pen(System.Drawing.Color.FromArgb(r.Next(255), r.Next(255), r.Next(255)), 1.1f);
Point p1 = new Point(array1[currentadd], dx);
Point p2 = new Point(array1[currentadd], dx = dx + 7);
gr.DrawLine(p, p1, p2);
现在我画了一条线,我想写出线连接它们的点的信息...所以我想设置标签位置来写点位置......但是怎么样?
答案 0 :(得分:0)
假设您使用的是标准Windows窗体标签:
label1.Location = p2; // your point
答案 1 :(得分:0)
You should take a look at this document here at MSDN.
特别是你在例子中会注意到的是这一行:
formGraphics.DrawLine(myPen, 0, 0, 200, 200);
这是做五件事:
Drawing Object
。这显然可以让你创建一些有界的位置。显然,如果你已经生成了一个最初会处理它的类来构建它。然后,当您在另一个班级中调用此对象时,您可以position
,dock
,location
和anchor
向该表单调用它。
潜在问题:
如果您直接在表单上使用示例中的方法,请记住 this
将绑定到当前范围表示 this
的对象。例如,如果此代码在按钮上:
Pen myPen = Pen(Color.Red);
Graphics formGraphics = this.CreateGraphics();
formGraphics.DrawLine(myPen, 0, 100, 200, 200);
然后在这种情况下,它会根据按钮对象的位置绑定点。
希望这有助于指明你正确的方向。
<强>更新强>
根据您的问题,听起来您试图将线放在标准标签的上方或下方。这可以很简单,例如:
// Define Label
Label i = new Label();
// Create our Line.
Pen iPen = Pen(Color.Red);
Graphics iGraphics = i.CreateGraphics();
iGraphics.DrawLine(iPen, 0, 250, 0, 0);
// Dock to Bottom of Form
i.Dock = DockStyle.Bottom;
然后,如果您使用按钮在任何位置更改位置,或者您在循环内修改文本,则该行将保持绑定到您的label
对象。这不是你想要的吗?