|
.NET TIPS ステータスバー内にコントロールを配置するには?デジタルアドバンテージ 遠藤 孝信2005/04/29 |
![]() |
|
|
|
Visual Studio .NET(以下、VS.NET)でWindowsアプリケーションを作成する場合、Windowsフォーム・デザイナ上では、ステータスバー・コントロール(StatusBarコントロール)内には別のコントロールを配置できない。しかし、コード・エディタを使ってコードを記述すれば、ステータスバー内にも別のコントロールを配置することができる。
以下の画面は、ステータスバー内にTrackBarコントロールを配置した例である。
![]() |
| ステータスバー内に配置されたTrackBarコントロール |
この画面例のようにステータスバー内にTrackBarコントロールを配置するには、以下のようにフォームのコンストラクタなどで、StatusBarコントロール(変数statusBar1)のControlsプロパティに対して、AddメソッドによりTrackBarコントロール(変数trackBar1)を追加すればよい(これによりTrackBarコントロールはStatusBarコントロールの子コントロールとなる)。
|
|
| TrackBarコントロールをStatusBarコントロール内に配置するフォームのコンストラクタ(C#) |
|
|
| TrackBarコントロールをStatusBarコントロール内に配置するフォームのコンストラクタ(VB.NET) |
このとき、追加するコントロールは全体がステータスバー内に収まるようにLocationプロパティやSizeプロパティ(あるいはこの2つをまとめて設定できるBoundsプロパティ)を設定しておく必要がある。また、ウィンドウのリサイズに従って自動的に横幅を変化させるためには、AnchorプロパティにAnchorStyles.Right値を追加してコントロールを右端に固定しておけばよい。
上記のコードをフォームのコンストラクタで記述するためには、新規作成したWindowsアプリケーションで、あらかじめフォーム上に「StatusBar」と「TrackBar」を配置しておく。
![]() |
| フォーム上に配置したStatusBarコントロールとTrackBarコントロール |
| ここではTrackBarコントロールのTickStyleプロパティを「None」に設定して、目盛りを非表示にしている。 |
なお、この時点ではTrackBarコントロールはフォームの子コントロールとなるが、
statusBar1.Controls.Add(trackBar1);
のコードにより、実行時にはフォームのControlsプロパティから削除される(フォームの子コントロールではなくなる。この場合にはTrackBarコントロールの親コントロール(Parentプロパティ)にStatusBarコントロールを設定してもよい)。
コントロール(この場合にはTrackBarコントロール)はコードのみにより作成することもできるが、このようにいったんフォーム上に配置した方が、フォーム・デザイナによるプロパティやイベントの設定ができるので便利だ。![]()
| カテゴリ:Windowsフォーム 処理対象:StatusBarコントロール 使用ライブラリ:StatusBarクラス(System.Windows.Forms名前空間) 使用ライブラリ:TrackBarクラス(System.Windows.Forms名前空間) |
| 「.NET TIPS」 |
TechTargetジャパン
- 新人プログラマーのためのInsider.NETの歩き方 2012 (2012/5/22)
晴れて.NETプログラマーとなる新人が効率的に開発技術を習得するには? 大量にある記事群の中から新人が読むべきお勧めを厳選して紹介 - jQuery MobileでJavaScriptプログラミング (2012/5/17)
jQuery Mobileは手軽なだけでなく、JavaScriptのAPIも充実しており、独自機能の実装もできる。今回は「グローバル設定」と「イベント」を解説 - Windows上で開発するための開発環境構築入門 (2012/5/16)
Windowsを使ってチームで開発している? なのにサーバOSを設定・運用した経験がない? そうなら、今すぐ学ぼう - 「コントラクト」でアプリのサンドボックスを乗り越える! (2012/5/11)
Metroスタイル・アプリはサンドボックスの中で動作する。それを乗り越えてほかのアプリと連携する仕組み「コントラクト」を解説
|
|
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -




