我正在尝试用固定的x1 / y1创建一条线,当用户移动光标时,它的另一端会移动到光标。 “大炮”就是这条线。当我尝试使用它时,该行确实跟随光标,但它有一个很大的偏移并被反转。我不确定它有什么问题,但它可能非常明显。
devise_for :users, controllers: {
sessions: 'users/sessions'
}
resources :users
答案 0 :(得分:0)
我怀疑Cursor.Position给出了相对于显示器左上角的鼠标坐标 - 就像MousePosition一样。试试这个..
PointToClient是一个计算鼠标相对于程序窗口位置的函数。
Dim angle as Double = Math.Atan(Math.Abs(Me.PointToClient(MousePosition).Y - cannon.Y1) / Math.Abs(Me.PointToClient(MousePosition).X- cannon.X1))
Dim h As Double = Math.Sqrt((Math.Abs(Me.PointToClient(MousePosition).X - cannon.X1) ^ 2) + Math.Abs(Me.PointToClient(MousePosition).Y - cannon.Y1) ^ 2)
Dim a As Double = h * Math.Cos(angle)
Dim o As Double = h * Math.Sin(angle)
cannon.X2 = cannon.X1 + a
cannon.Y2 = cannon.Y1 - o