我试图理解如何编写以下代码而不编写Dim StartingPoint
/或创建一个昏暗的点。 以下代码将光标移动到User Control的偏移值
Private Sub MoveToStart()
Dim StartingPoint = Panel1.Location() ' Get User Control Location
StartingPoint.Offset(10, 10) ' Set Cursor Point offset
Cursor.Position = PointToScreen(StartingPoint) ' Move the Cursor to position
End Sub
我很乐意按照以下方式写出来:
Private Sub MoveToStart()
Cursor.Position = PointToScreen(Panel1.Location.Offset(10, 10))
End Sub
以下代码:Cursor.Position = PointToScreen()
需要我返回一个Point。但我真的无法弄清楚如何在没有昏暗的情况下做到这一点。
答案 0 :(得分:2)
你遇到的问题是Offset()是一个不返回值的子程序,而是改变了目标的值
如果你真的需要它在一行,你可以这样做而不需要像这样调用偏移量:
Private Sub MoveToStart()
Cursor.Position = New Point(PointToScreen(Panel1.Location()).X + 10, PointToScreen(Panel1.Location()).Y + 10)
End Sub
答案 1 :(得分:0)
在Reddit的帮助下,我得到了另一个答案Reset Cursor Reddit。
Private Sub MoveToStart()
Cursor.Position = PointToScreen(Panel1.Location)
Cursor.Position.Offset(10,10)
End Sub