2012年7月16日月曜日

C# PictureBoxコントロールで画像を表示

PictureBoxコントロールをつかって画像を表示する方法。



PictureBoxコントロールを使うと簡単に画像を表示することができます。


まず、フォームにPictureBoxコントロールを追加します。


PictureBoxコントロールの「BackColor」プロパティで背景色をBlackに、
「Size」プロパティでコントロールのサイズを100,100に設定。
(この2つの値は任意の値でOK)




「Image」プロパティの[...]ボタンをクリックして表示する画像を指定する。
(ImageLocationプロパティで指定することもできる)




ここでは、「ローカルリソース」を指定して[インポート]ボタンをクリックし画像ファイルをインポートします。





インポートするファイルを選択して、[開く]ボタンをクリックします。


指定した画像が右側に表示されるので確認し、よければ[OK]ボタンをクリック。


これで指定した画像が、PictureBoxコントロールに表示されます。



指定した画像は表示されましたが、画像の一部(左上)しか表示されていません。
指定したもとの画像は、これです↓


これは、PictureBoxコントロールのSizeModeプロパティが関係しています。
SizeModeプロパティで画像の表示方法をコントロールします。

指定できる値は、


  • Normal
  • StretchImage
  • AutoSize
  • CenterImage
  • Zoom

の5つ。


[Normal]を指定すると、「画像の左上」と「コントロールの左上」の位置があうように画像が表示されます。画像サイズは100%のサイズで表示されるので、コントロールからはみ出た部分は表示されまん。今の状態。


[StretchImage]を指定すると、コントロールのサイズにフィットするように、画像サイズが拡大縮小されます。


[AutoSize]を指定すると、画像のサイズにフィットするように、コントロールサイズが拡大


[CenterImage]を指定すると、「画像の中央」と「コントロールの中央」の位置があうように画像が表示されます。画像サイズは100%のサイズで表示されるので、コントロールからはみ出た部分は表示されまん。


[Zoom]を指定すると、コントロールのサイズにフィットするように、画像サイズが縦横比率をたもった状態で拡大縮小されます。




実際に5つの指定をしたのがこれ
↓ ↓ ↓

PictureBoxコントロールを5つ設置しています。
SizeModeプロパティ以外はすべて同じ値。

「BackColor」プロパティで背景色をBlack。
「Size」プロパティでコントロールのサイズを100,100。
「Image」プロパティに同じ画像を指定。

ちなみサンプルで利用している画像は、こちらのサイトの画像を利用させていただきました。
↓ ↓ ↓ 
写真素材 足成