- - PR -
ボタンコントロールに関して
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-05-23 23:19
環境はVS2005になります。
Projectを新規作成し、フォーム上にボタンコントロールを配置して 実行すると、なぜかボタンコントロールの枠に点線がついてしまいます。 (フォーカスがあたっている状態というのでしょうか?) これを解除する方法はないのでしょうか? ちなみにフォームにフォーカスを当てれば避けられるのでは?と考え Form.Focus としてみたのですが、意味がありませんでした。 アドバイスいただけないでしょうか? | ||||||||||||
|
投稿日時: 2006-05-23 23:31
そういうものです。
これはそのボタンにフォーカスを当てたくないということでしょうか それともフォーカスは受けるけれど、点線のついた描画を止めたいということでしょうか | ||||||||||||
|
投稿日時: 2006-05-23 23:31
はい、正しい動作です。
言語が書かれていませんが、 [C#] this.ActiveControl = null; [VB] Me.ActiveControl = Nothing では、どうでしょうか? _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||||||
|
投稿日時: 2006-05-24 08:52
言語はVBになります。
>じゃんぬねっとさん FormLoadにMe.ActiveControl = Nothing を加えてみましたができませんでした。 >かるあさん フォーカスは受けるけれど、点線のついた描画を止めたい をやりたいです。 お願いいたします。 | ||||||||||||
|
投稿日時: 2006-05-24 09:12
# 後から見られる方が誤解されるといけないので、一応書いておきますが、 これは、ご質問を「フォーカスを解除する」という意味だと思ったので回答したものです。 フォーカスを解除する、はこの方法で可能ですよ。(ただし、Load イベントでは不可です)
Button を継承したクラスにて、ShowFocusCues を常に false で返すようにすれば良いでしょう。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||||||
|
投稿日時: 2006-05-24 09:17
誤解されないようにと補足投稿した後で、さらに補足するのは恐縮なのですが、これは誤られていると思います。
と、Form の Load イベントで記述してしまっただけだと思います。
ShowFocusCues で簡単に満たせる仕様ではありますが、 Windows の仕様を無視している、というご意見には同意です。 # 何か投稿消えてますね... orz [ シグネチャを削除 ] [ メッセージ編集済み 編集者: じゃんぬねっと 編集日時 2006-10-03 08:54 ] | ||||||||||||
|
投稿日時: 2006-05-24 09:53
逆にActiveControl=Text1を考えて、何言ってんだおれ?と気付いて退散させていただきました。。。
唯一、そん時にぱんぱんのテキストが改行されるのは勘弁してほしいですがね。
某氏のように気付かれずにというのは、お尻の青い私にとってはまだまだ。。。 | ||||||||||||
|
投稿日時: 2006-05-24 10:34
じゃんぬねっとさん
誤解を招くような質問で申し訳ございませんでした。 FormActivedにMe.ActiveControl = Nothing を記述することで対応ができました。 ありがとうございます! |