投稿者 魔界の仮面弁士  (社会人) 投稿日時 2017/10/17 19:00:58
アイコン(.ico)形式ではなく、カーソル(.cur)形式のファイルを指定する必要があります。
.ico ではホットスポットを指定できませんので、常に左上が原点になってしまいます。

https://msdn.microsoft.com/ja-jp/library/0b1674x8.aspx


Public Class Form1
    Private Declare Unicode Function LoadCursorFromFile Lib "user32" Alias "LoadCursorFromFileW" (lpFileName As StringAs IntPtr

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        'モノクロカーソルの場合 
        Button1.Cursor = New Cursor("C:\Windows\Cursors\lwe.cur")
        'カラーカーソルの場合 
        Button2.Cursor = New Cursor(LoadCursorFromFile("C:\Windows\Cursors\aero_pen_xl.cur"))
        'アニメーションカーソルの場合 
        Button3.Cursor = New Cursor(LoadCursorFromFile("C:\Windows\Cursors\aero_working_xl.ani"))
    End Sub
End Class