自作のカラーカーソルを表示する |
.NETのCursorクラスはカラーカーソルをサポートしていないため、埋め込みリソースやカーソルファイルを指定して
new Cursor( XXX )
を実行しても、モノクロカーソルになってしまいます。Win32APIの
LoadImage()
を使用する、という方法がWebで見つかりましたが、埋め込みリソースでうまくできなかったので、超反則技ですが・・・(てゆうか、どこがC#
Tipsやねんvv;)。 C言語で自作カーソルをリソースに埋め込んだDLLを作成します。DLLにはカーソルリソースのほかに、カーソルハンドルを返す関数を作成しておきます。 DLL: myCursor.dll 関数: HCURSOR GetHCursor() // DLL関数宣言 [DllImport("myCursor.dll")] private static extern IntPtr GetHCursor(); // カレントカーソルを変更する Cursor.Current = new Cursor( GetHCursor() ); |