イメージの表示 : PictureBox コントロールの使用
更新 : 2007 年 11 月
このレッスンでは、PictureBox コントロールを使用してイメージを表示する方法、およびピクチャをフォームの背景イメージとして表示する方法について説明します。
1 枚の絵は 1000 の言葉に値する (百聞は一見にしかず) と言われるように、実際に多くのプログラムがピクチャを使用して情報を伝達しています。Visual Basic でピクチャを表示するには、複数の方法がありますが、最も一般的な方法は、PictureBox コントロールを使用することです。
PictureBox コントロールは、ピクチャのコンテナとして機能します。Image プロパティを設定して、表示するピクチャを選択します。Image プロパティは、[プロパティ] ウィンドウで設定するか、表示するピクチャをプログラムに通知するコードを記述します。
PictureBox コントロールのその他の便利なプロパティとしては、PictureBox がピクチャに合わせて伸縮するかどうかを決定する AutoSize プロパティ、PictureBox コントロール内でイメージを拡大、中央揃え、またはズームするために使用される SizeMode プロパティがあります。
PictureBox コントロールにピクチャを追加する前に、通常はピクチャ ファイルをリソースとしてプロジェクトに追加します。プロジェクトにリソースを追加すると、必要に応じて何回でもリソースを再利用できます。たとえば、同じピクチャを複数の場所に表示できます。
やってみよう
ピクチャをリソースとして追加するには
[ファイル] メニューの [新規作成] をポイントし、[プロジェクト] をクリックします。
[新しいプロジェクト] ダイアログ ボックスの [テンプレート] ペインで、[Windows アプリケーション] をクリックします。
[プロジェクト名] ボックスに「Pictures」と入力し、[OK] をクリックします。
新しい Windows フォーム プロジェクトが開きます。
[ソリューション エクスプローラ] ウィンドウで、[My Project] ノードを右クリックしてプロジェクト デザイナを開きます。
プロジェクト デザイナで、[リソース] タブをクリックします。
[リソースの追加] をクリックし、ドロップダウン リストの [既存のファイルの追加] をクリックします。
[既存のファイルをリソースに追加] ダイアログ ボックスが開きます。ピクチャ ファイルが表示されない場合は、ピクチャを含むフォルダを参照します。
イメージ ファイル (ファイル名拡張子が .bmp、.gif、または .jpg のファイル) を選択し、[開く] をクリックします。この例では、小さいピクチャを選択することをお勧めします。
ピクチャがプロジェクトに追加され、[リソース マネージャ] ウィンドウに表示されます。
2 番目のピクチャをプロジェクトに追加するには、前の 2 つの手順を繰り返します。
[ファイル] メニューの [閉じる] をクリックします。変更を保存するかどうかを確認するメッセージが表示された場合は、[はい] をクリックします。
PictureBox コントロールを使用してピクチャを表示するには
ソリューション エクスプローラで Form1.vb を選択し、[表示] メニューの [デザイナ] をクリックします。
ツールボックスから、フォームに PictureBox コントロールをドラッグします。
[プロパティ] ウィンドウで Image プロパティの隣にある 省略記号 (...) ボタンをクリックして、[リソースの選択] ダイアログ ボックスを開きます。
[入力] ボックスで、追加したピクチャの 1 つを選択し、[OK] をクリックします。
SizeMode プロパティを選択して、AutoSize に設定します。
ピクチャに合わせて PictureBox コントロールのサイズが自動的に変更されることに注意してください。
フォームの PictureBox コントロールをダブルクリックして、PictureBox1_Click イベント ハンドラをコード エディタで開きます。
PictureBox1_Click イベント ハンドラに次のコードを追加します。
メモ : "MyPictureName2" を、前に追加した 2 番目のピクチャの実際の名前に置き換える必要があります。
PictureBox1.Image = My.Resources.MyPictureName2
F5 キーを押してプログラムを実行します。フォームが表示されたら、ピクチャをクリックして、2 番目のピクチャを表示させます。
フォームでの背景イメージの表示
PictureBox コントロールでピクチャを表示する以外に、ピクチャをフォームの背景として表示することもできます。フォームの BackgroundImage プロパティは、Windows デスクトップの壁紙と同じように、フォームのその他のコントロールの背後に表示されるピクチャを表示するために使用されます。
Windows で、壁紙を中央に表示するか、並べて表示するか、画面いっぱいに拡大して表示するかを選択できるのと同じように、BackgroundImageLayout プロパティを使用することによって、フォームにも同じことを実行できます。
ヒント : |
---|
Panel、GroupBox などのその他のコントロールの多く、および Button コントロールにも BackgroundImage プロパティがあります。試して確認してみてください。 |
やってみよう
フォームに背景イメージを表示するには
ソリューション エクスプローラで Form1.vb を選択し、[表示] メニューの [デザイナ] をクリックします。
PictureBox の外側をクリックして、フォームを選択します。
[プロパティ] ウィンドウで BackgroundImage プロパティの隣にある 省略記号 (...) ボタンをクリックして、[リソースの選択] ダイアログ ボックスを開きます。
[入力] ボックスで、前に追加したピクチャの 1 つを選択し、[OK] をクリックします。
フォームの PictureBox の背後にピクチャが表示されます。既定では並べて表示されています。
メモ : PictureBox コントロール内のピクチャが大きすぎる場合、背景ピクチャが見えないことがあります。この場合は、PictureBox コントロールを選択してフォームの下部にドラッグし、背景が見えるようにします。
BackgroundImageLayout プロパティを選択して、Stretch に設定します。
フォーム全体を埋めるようにピクチャが拡大します。
フォームをダブルクリックしてコード エディタを開きます。
左側のドロップダウン ボックスで Form1 Events を選択し、右側のドロップダウン ボックスの Click をクリックします。
Form1_Click イベント ハンドラに次のコードを追加します。
If Me.BackgroundImageLayout = ImageLayout.Stretch Then Me.BackgroundImageLayout = ImageLayout.Center Else Me.BackgroundImageLayout = ImageLayout.Stretch End If
F5 キーを押してプログラムを実行します。フォームが表示されたら、クリックしてレイアウトを変更します。
次の手順
このレッスンでは、PictureBox コントロールを使用してイメージを表示する方法、およびフォームの BackgroundImage プロパティを使用する方法について説明しました。次のレッスンでは、ユーザーに選択肢を提示するメニューを作成する方法について説明します。
次のレッスン : 「ユーザーへの選択肢の提示 : デザイン時にメニューを作成する」