カーソルを「Iビーム」から「ボックス」にするには?

解決


弁慶  2008-05-22 02:38:35  No: 144767

テキストボックスやコンボボックスにフォーカスがきた際に、カーソルが通常「Iビーム」になってると思いますが、目立たない為、「ボックス」にしたいのですが可能であれば教えて下さい。


やじゅ  2008-05-22 03:16:48  No: 144768

ボックスってどれ?
http://devdoc.kikyou.info/tvp/docs/kr2doc/contents/MouseCursors.html

マウスを変更したいなら、下記のキーワードで検索してみて
「マウスカーソル変更 VB6」


やじゅ  2008-05-22 03:18:10  No: 144769

訂正:掲示板は.NET版だったね。
「マウスカーソル変更 VB6」→「マウスカーソル変更 VB.net」


弁慶  2008-05-22 03:39:42  No: 144770

早速のレスありがとうございます。

説明が不十分でした。
変えたいのはマウスカーソルではなく、テキストボックス内にフォーカスがきた際のテキストボックスの中の表示です。
(EXCEL等で上書きモードの際になるような…例えが悪いかな)

「ボックス」と言ったのは、別のソフトで「Iビーム」と「ボックス(■)」の切替可能なものがあったので、その表現で書きました。
実際に「ボックス」があるのかは把握していません。


魔界の仮面弁士  2008-05-22 04:47:29  No: 144771

なるほど。caret の事ですか。

# ランゲージ ポータルで調べると、「カーソル」「キャレット」「カレット」と
# 和訳が揺れているされている模様…。ややこしいなぁ。
http://www.microsoft.com/language/ja/jp/search.mspx?sString=caret&langID=0

で、キャレットの変更はこんな感じ。

Private Declare Function CreateCaret Lib "user32" _
    (ByVal hWnd As IntPtr, ByVal hBitmap As IntPtr, ByVal nWidth As Integer, _
     ByVal nHeight As Integer) As <MarshalAs(UnmanagedType.Bool)> Boolean

Private Declare Function ShowCaret Lib "user32" _
    (ByVal hWnd As IntPtr) As <MarshalAs(UnmanagedType.Bool)> Boolean

  CreateCaret(TextBox1.Handle, IntPtr.Zero, 15, 15)
  ShowCaret(TextBox1.Handle)


やじゅ  2008-05-22 05:56:33  No: 144772

キャレットの幅を変更できることを今頃しりました。
調べたところ
コントロールパネルのユーザー補助のオプション→画面タブ
カーソルのオプション→幅
で変更できますね。プログラムではないけど・・・


弁慶  2008-05-23 17:55:33  No: 144773

回答ありがとうございました。
「魔界の仮面弁士」さん。これは一度試してみます。

いざとなれば「やじゅ」さんアドバイスの方法もありかと思います。
これはお客様に判断して使ってもらおうかと思います。

本当にありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加