CreateCursor

指定したサイズ、ビットパターン、ホットスポットを持つカーソルを作成する。

CreateCursor hInst, xHotSpot, yHotSpot, nWidth, nHeight, pvANDPlane, pvXORPlane

hInst : [intptr] 型: HINSTANCE カーソルを作成するアプリケーションの現在のインスタンスへのハンドル。
xHotSpot : [int] 型: int カーソルのホットスポットの水平位置。
yHotSpot : [int] 型: int カーソルのホットスポットの垂直位置。
nWidth : [int] 型: int カーソルの幅 (ピクセル)。
nHeight : [int] 型: int カーソルの高さ (ピクセル)。
pvANDPlane : [intptr] 型: const VOID* デバイス依存モノクロビットマップのように、カーソルの AND マスクのビット値を含むバイト配列。
pvXORPlane : [intptr] 型: const VOID* デバイス依存モノクロビットマップのように、カーソルの XOR マスクのビット値を含むバイト配列。

(プラグイン / モジュール : user32.dll)

解説

指定したサイズ、ビットパターン、ホットスポットを持つカーソルを作成する。

[戻り値]
型: HCURSOR 関数が成功した場合、戻り値はカーソルへのハンドル。関数が失敗した場合、戻り値は
NULL。拡張エラー情報を取得するには GetLastError を呼ぶ。

[備考]
nWidth と nHeight
は現在のディスプレイドライバがサポートする幅と高さを指定しなければならない。システムは他のサイズのカーソルを作成できない。ディスプレイドライバがサポートする幅と高さを判定するには、SM_CXCURSOR
または SM_CYCURSOR 値を指定して GetSystemMetrics 関数を使用する。アプリケーションは終了前に
DestroyCursor 関数を呼んで、カーソルに関連付けられたシステムリソースを解放しなければならない。DPI 仮想化: この API
は DPI 仮想化に参加しない。返される出力は物理座標で、呼び出し元スレッドの DPI
には影響されない。ただし、作成されたカーソルは描画される任意のウィンドウの DPI に合わせてスケールされる場合がある。

情報

プラグイン / モジュールuser32.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の user32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_user32_gen2.hs