SetCursor

マウスカーソルの形状を設定します。

HCURSOR SetCursor(
    HCURSOR hCoursor    // カーソルハンドル
);

USER32.DLL

引数

hCoursor

マウスカーソルのハンドルを指定します。このハンドルは CreateCursor 関数で作成されたカーソルか、 LoadCursor 関数または LoadImage 関数でロードされたカーソルのハンドルでなければなりません。このパラメータに 0 (NULL) を指定すると、マウスカーソルはスクリーンから削除されます。

Windows 95/98/Me: カーソルの幅および高さは、 SM_CXCURSOR および SM_CYCURSOR を指定して GetSystemMetrics 関数を呼び出したときの戻り値と同じでなければなりません。 Windows 95 では、カーソルのビット深度がディスプレイのビット深度と同じであるか、もしくは、カーソルがモノクロでなければなりません。 Windows 98/Me では、カーソルのビット深度とディスプレイのビット深度とが同じでない場合は、カーソルが 4bpp VGA カラーに変換されます。

戻り値

以前のマウスカーソルのハンドルが返ります。

以前にマウスカーソルが存在しないときは、0 (NULL) が返ります。

解説

指定されたカーソルが以前のカーソルと異なる場合にのみ、カーソルを変更します。そうでない場合は、関数はすぐに制御を返します。

カーソルがウィンドウ上にある間ずっと表示されるようにカーソルを設定する場合には、指定されたウィンドウのウィンドウクラスで設定されるクラスカーソルが 0 (NULL) になるようにします。クラスカーソルが 0 (NULL) でない場合、システムはカーソルが動かされるたびにクラスカーソルに戻します。クラスカーソルを変更するには SetClassLong 関数または SetClassLongPtr 関数 を使います。

内部のカーソル表示カウンタが 0 未満の場合は、カーソルはスクリーン上に表示されません。表示カウンタは ShowCursor 関数によって変更されます。

対応情報

Windows 95 以降 / Windows NT 3.1 以降