アイコンからカーソルを作成するには

アイコンからカーソルを作成します。
キーワードは「CopyCursor()関数」。
CopyCursor()関数は、カーソルをコピーする関数ですが、
アイコンのハンドルを指定するとアイコンからカーソルを作ることができます。

もともとアイコンとカーソルのファイル構造はほとんど同じなので、
アイコンの関数はカーソルにも使えることが多いです。


実行中の様子


Dim hCursor As Long, hOldCursor As Long

Private Sub Form_Load()
Me.Caption = "アイコンからカーソルを作る"
Dim hIcon As Long
'アイコンファイルからカーソルを作る
hIcon = LoadImageStr(App.hInstance, "icon.ico", IMAGE_ICON, 0, 0, LR_LOADFROMFILE)
hCursor = CopyCursor(hIcon)
hOldCursor = SetCursor(hCursor)
Call DestroyIcon(hIcon)
End Sub

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) 'マウスカーソルを設定する '(VBのコントロール上ではマウスが動くたびにマウスを標準に戻そうとするため) Call SetCursor(hCursor) End Sub
Private Sub Form_Unload(Cancel As Integer) Call SetCursor(hOldCursor) Call DestroyCursor(hCursor) End Sub
ダウンロード