C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[5]: OS設定のカーソルを変更。


(過去ログ 88 を表示中)

[トピック内 7 記事 (1 - 7 表示)]  << 0 >>

■52674 / inTopicNo.1)  OS設定のカーソルを変更。
  
□投稿者/ gonna (56回)-(2010/08/19(Thu) 22:40:22)

分類:[VB.NET/VB2005 以降] 

こんにちは。
コントロールパネルの個人設定で出来る、ユーザー好みの
マウスカーソルを設定出来る項目が有りますよね。
あれをVBを使って設定させたいのですが、
どのように設定すればよいか分からなく困っています。
設定の仕方を是非ご教授願います。

vb2008
引用返信 編集キー/
■52676 / inTopicNo.2)  Re[1]: OS設定のカーソルを変更。
□投稿者/ オショウ (549回)-(2010/08/20(Fri) 09:40:14)
No52674 (gonna さん) に返信
> こんにちは。
> コントロールパネルの個人設定で出来る、ユーザー好みの
> マウスカーソルを設定出来る項目が有りますよね。
> あれをVBを使って設定させたいのですが、
> どのように設定すればよいか分からなく困っています。
> 設定の仕方を是非ご教授願います。

  Win32 APIにて、SetCursorと言う関数があります。

  http://msdn.microsoft.com/ja-jp/library/cc411027.aspx

  これを参考に、イメージをカーソルに設定できます。

  Win32 APIを、Declare宣言して使用するのは、ご存じですよネ?

以上。
引用返信 編集キー/
■52680 / inTopicNo.3)  Re[1]: OS設定のカーソルを変更。
□投稿者/ とっちゃん (540回)-(2010/08/20(Fri) 10:37:26)
とっちゃん さんの Web サイト
No52674 (gonna さん) に返信

自分のアプリだけではなく、システム全体を変更でしょうか?
であれば、SetSystemCursor APIを使うことで実現可能だと思います。

カーソルのロードさえ何とかなれば、あとはなんとでもなるんじゃないかな?と思いますけど、全部APIベースでやる必要があります。
.NET Framework のCursorクラスとかは使えませんので注意してください。

引用返信 編集キー/
■52694 / inTopicNo.4)  Re[2]: OS設定のカーソルを変更。
□投稿者/ gonna (57回)-(2010/08/20(Fri) 18:46:29)
色々なご意見ありがとうございます。
今回はSetSystemCursorを使おうと思います。
そこで、このように宣言しました。
Private Declare Function SetSystemCursor Lib "user32" (ByVal hcur As Long, ByVal id As Long) As Boolean
idには何を入れればよいか分かり、hcurにはカーソルをロードし、そのハンドルを入れればよいのも分かりました。
しかし、そのカーソルのロードの仕方が分かりません。
ご教授よろしくお願いします。

引用返信 編集キー/
■52695 / inTopicNo.5)  Re[3]: OS設定のカーソルを変更。
□投稿者/ 魔界の仮面弁士 (1759回)-(2010/08/20(Fri) 18:55:15)
2010/08/20(Fri) 18:56:34 編集(投稿者)

No52694 (gonna さん) に返信
> Private Declare Function SetSystemCursor Lib "user32" (ByVal hcur As Long, ByVal id As Long) As Boolean
Long ではまずいでしょう。IntPtr と UInteger にしておいてください。
あと、戻り値を Boolean にするのなら、<MarshalAs(UnmanagedType.Bool)> を付与すべきです。
http://msdn.microsoft.com/ja-jp/library/ms182206.aspx

> idには何を入れればよいか分かり、hcurにはカーソルをロードし、そのハンドルを入れればよいのも分かりました。
> しかし、そのカーソルのロードの仕方が分かりません。
LoadImage or LoadCursor API でロードしてください。
(あるいは Cursor.Handle プロパティが使えるかも知れませんが、未検証です)
引用返信 編集キー/
■52696 / inTopicNo.6)  Re[4]: OS設定のカーソルを変更。
□投稿者/ todo (40回)-(2010/08/20(Fri) 19:02:20)
2010/08/20(Fri) 19:03:15 編集(投稿者)

サンプル>

Changing the Systems Cursor in VB.NET
http://www.codeproject.com/KB/system/ChangeSystemCursor.aspx
引用返信 編集キー/
■52705 / inTopicNo.7)  Re[5]: OS設定のカーソルを変更。
□投稿者/ gonna (58回)-(2010/08/21(Sat) 15:21:43)
皆さんご返答ありがとうございます。

魔界の仮面弁士さんへ。
そうでしたか、Longではまずかったですか。
APIの使い方を丁寧に教えて頂きありがとうございます。

todoさんへ。
サンプルをありがとうございます。
これを応用して無事に作れそうです。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -