指定の位置へカーソルを移動させるのに、下記のコードを実行したのですが、X値は300へ移動したがY値が画面最上の0の位置に移動してしまいます。
別の機種で実行しても同じ結果でした。別のやり方等、対策があれば教えて下さい。
Private Declare Function SetCursorPos Lib "user32" _
(ByVal x As Long, ByVal y As Long) As Long
'マウスを擬似的に動作させる(P1044)
Private Declare Sub mouse_event Lib "user32" ( _
ByVal dwFlags As Long, ByVal dx As Long, _
ByVal dy As Long, ByVal cButtons As Long, _
ByVal dwExtraInfo As Long)
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonRun.Click
Call SetCursorPos(300, 200)
End Sub
NEWをつける事でうまくいきました。
Cursor.Position = New Point(300, 200)