|
.NET TIPS スクロールバー付きでPictureBoxコントロールに画像に表示するには?[C#、VB]デジタルアドバンテージ 遠藤 孝信2008/01/24 |
![]() |
|
|
|
PictureBoxコントロール(System.Windows.Forms名前空間)に画像を表示する場合、特に画像がPictureBoxコントロールのサイズよりも大きい場合には、PictureBoxコントロールのSizeModeプロパティにより以下のような表示方法がある。
| ||||||||||||
| PictureBoxコントロールのSizeModeプロパティに設定可能な値 | ||||||||||||
| ここでは画像がPictureBoxコントロールのサイズよりも大きい場合の表示結果を示している。なお、これらの値はPictureBoxSizeMode列挙体(System.Windows.Forms名前空間)で定義されている。 |
このようにいくつかの表示方法が用意されているが、固定領域内にスクロールバー付きで画像を表示するような機能はPictureBoxコントロールには用意されていない。本稿ではこれを実現するための簡単な方法を紹介する。
パネルを使ったPictureBoxコントロールのスクロール
PictureBoxコントロールによりスクロールバー付きで画像を表示するには、PictureBoxコントロールをPanelコントロールと組み合わせることにより可能だ。以下にVisual Studio利用時の手順を示す。
画像を表示したい部分にPanelコントロールを配置してサイズを調整する
Panelコントロールの中にPictureBoxコントロールを配置する
これによりPictureBoxコントロールはPanelコントロールの子コントロールとなる。このためPictureBoxコントロールはPanelコントロールの領域部分にしか表示されなくなる(Panelコントロールにより表示がクリッピングされる)。
PictureBoxコントロールのLocationプロパティを「(0, 0)」に設定する。
PictureBoxコントロールのSizeModeプロパティを「AutoSize」に設定する
これにより画像のサイズに合わせてPictureBoxコントロールのサイズが変化するが、
に記述したように、Panelコントロール以外の部分にはPictureBoxコントロールは表示されない。
PanelコントロールのAutoScrollプロパティを「True」に設定する
これによりPanelコントロールの中に配置されたコントロール(本稿の場合ではPictureBoxコントロール)がPanelコントロールのサイズよりも大きい場合に、自動的にスクロールバーが表示されるようになる。
次の画面は以上の手順によりPictureBoxコントロールとPanelコントロールと配置したところだ(Visual Studio 2005)。
![]() |
| Panelコントロール内に配置したPictureBoxコントロール |
| PanelコントロールのAutoScrollプロパティを「True」に、PictureBoxコントロールのSizeModeプロパティを「AutoSize」に設定している。 |
この時点ですでにスクロールバーが表示され、実際に画像(=PictureBoxコントロール)をスクロールさせることができる。![]()
| カテゴリ:Windowsフォーム 処理対象:PictureBoxコントロール カテゴリ:Windowsフォーム 処理対象:Panelコントロール 使用ライブラリ:PictureBoxSizeMode列挙体(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 -



