我有一个三点的数组:
Public Points(2) As Point
我设置了Point(0)的值:
Points(0) = PointToScreen(Label1.Location)
当我使用此设置光标位置时,位置位于左上角,或0,0
Cursor.Position = Points(0)
我也试过这个没有运气:
Cursor.Position = New Point(Points(0).X, Points(0).Y)
此外,我已经确认Point(0)确实包含一个值,方法是在文本框中显示它。
我做错了什么?我感谢任何回复。感谢
答案 0 :(得分:1)
Point的分配应该可以正常工作。
但请注意,正如您所说,PointToScreen
是表单的一种方法。
如果Label1直接位于表单上,那么PointToScreen(Label1.Location)
将起作用,但如果它位于另一个容器中则不行。
如果Label1位于表单上,那么您的调用等同于:
Cursor.Position = Label1.Parent.PointToScreen(Label1.Location)
但这只有在Label1.Parent = Form1
时才有效,这在您的情况可能并非如此 - 所以您需要使用上面的行,这可以进一步减少:
Cursor.Position = Label1.PointToScreen(New Point(0, 0))
答案 1 :(得分:0)
Windows.Forms.Cursor.Position = New Point(100, 100)