.NET TIPS

VB PowerPacksの直線/丸/四角を選択されないようにするには?[2.0、3.0、3.5、3.5 SP1、VS 2008、C#、VB]

デジタルアドバンテージ 一色 政彦
2008/10/09

 「TIPS:Windowsフォームで直線を描くには?」「TIPS:Windowsフォームで円を描くには?」「TIPS:Windowsフォームで四角を描くには?」では、.NET Framework 3.5 SP1で追加されたLineShapeコントロール/OvalShapeコントロール/RectangleShapeコントロール(いずれもMicrosoft.VisualBasic.PowerPacks名前空間)を使って、Windowsフォーム上に直線/丸/四角を描く方法を紹介した。

 しかし、このようにして描いた直線/丸/四角をエンド・ユーザーがクリックすると、次の画面のように、選択状態を示す点線が表示される。このような点線を表示したくないケースもあるのではないだろうか。

選択状態を示す点線が表示されるRectangleShapeコントロール
RectangleShapeコントロールをクリックして選択状態にしたところ。四角の回りに青色の点線が表示されている。

 そこで本TIPSでは、「この点線を表示させない方法」と「点線の色をカスタマイズする方法」を紹介する。

 この方法は、LineShapeコントロール/OvalShapeコントロール/RectangleShapeコントロール(以降、これらをまとめて「XxxShapeコントロール」と表記)のどれに対してでも同じ処理となるので、ここでは代表としてRectangleShapeコントロールを使用する。なお本TIPSでは、SP1を適用したVisual Studio 2008(以降、VS 2008)を使用することを前提とする。

選択状態を示す点線を表示させない方法

 選択状態を示す点線を表示させないようにするには、XxxShapeコントロールのEnabledプロパティを「False」に設定すればよい。これは通常どおり、[プロパティ]ウィンドウで行えばよい(もちろんコードで記述することも可能)。

[プロパティ]ウィンドウでEnabledプロパティを「False」に設定

 以上の設定でコントロールの選択自体ができなくなるため、結果的に選択状態を示す青色の線は表示されない。

選択状態を示す点線の色をカスタマイズする方法

 また、選択状態を目立たせるためなどの目的で、標準の選択時の色(システムカラーのハイライト色:System.Drawing.SystemColors.Highlight)から別の色に変更したいというケースもあるだろう。その場合、XxxShapeコントロールのSelectionColorプロパティを変更すればよい。次の画面は、[プロパティ]ウィンドウで「赤」を設定している例だ。

[プロパティ]ウィンドウでSelectionColorプロパティを「赤」に設定

 これを実行したのが次の画面だ。

選択状態の点線の色を「赤」に設定したXxxShapeコントロールの実行例

 このように任意の色の点線にカスタマイズできる。End of Article

利用可能バージョン:.NET Framework 2.0
利用可能バージョン:.NET Framework 3.0
利用可能バージョン:.NET Framework 3.5
利用可能バージョン:.NET Framework 3.5 SP1
カテゴリ:Windowsフォーム 処理対象:LineShapeコントロール
カテゴリ:Windowsフォーム 処理対象:OvalShapeコントロール
カテゴリ:Windowsフォーム 処理対象:RectangleShapeコントロール
使用ライブラリ:LineShapeコントロール(Microsoft.VisualBasic.PowerPacks名前空間)
使用ライブラリ:OvalShapeコントロール(Microsoft.VisualBasic.PowerPacks名前空間)
使用ライブラリ:RectangleShapeコントロール(Microsoft.VisualBasic.PowerPacks名前空間)
関連TIPS:Windowsフォームで直線を描くには?
関連TIPS:Windowsフォームで円を描くには?
関連TIPS:Windowsフォームで四角を描くには?

この記事と関連性の高い別の.NET TIPS
Windowsフォームで四角を描くには?
Windowsフォームで円を描くには?
Windowsフォームで直線を描くには?
Windowsフォームで直線コントロールを配置するには?
DataGridコントロールで入力中のセルをハイライト表示するには?
このリストは、(株)デジタルアドバンテージが開発した
自動関連記事探索システム Jigsaw(ジグソー) により自動抽出したものです。
generated by

「.NET TIPS」


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)
- PR -

注目のテーマ

Insider.NET 記事ランキング

本日 月間
ソリューションFLASH