【VB.Net】PictureBoxに画像を簡単に表示する方法

どうも!リョクちゃです。

読者の皆さんはWindowsアプリケーションで、

パソコンに保存した画像を表示したくなる時はありませんか?

アプリケーションによっては、必要なときに画像を

表示したいといったときがあるのではないでしょうか?

そんな悩みを抱いている皆さんに向けて、

今回はPicturaBoxと呼ばれるコントロールを使って簡単に

自身のパソコンに保存されている写真=画像を表示する方法を紹介していきます。

ちなみに前回はこちら、

文字列として与えられた日付型データ2つをString型からDateTime型に変換し、どちらの日付が最新日であるかどうか判定をし結果を返す方法を例を交えて紹介しています。String型からDateTime型の変換方法を身に着けていきます。



目次

準備編:フォームの作成

今回は以下のフォームを作成していきます。

メイン画面

Noコントロール名称
1PictureBoxPictureBox1
2LabelLabel1
3LabelLabel2
4ButtonButton1
スポンサーリンク




実行環境

筆者の実行環境は、

  • VisualStudio2019
  • Windows 10 64bit
  • .Net Framework 4.5.1

になります。

※ Windows7 8 8.1でも動作はできますが、画面デザインの表示が変わるかもしれません。

アプリケーションの目的

Button1を押すことで、PicturaBox1に表示したい画像のファイルを選択する

ダイアログが開き、選択した画像をPictureBox1に表示をするとともに表示した

画像の名前をLabel2に表示することができることを目的とする。

プログラム編

PictureBoxに画像を表示するには、

PictureBox.Image = System.Drawing.Image.FromFile(“画像ファイルのパス”)
PictureBox.ImageLocation = “画像ファイルのパス”

の2パターンが一般的にはあります。

今回は、前者のPictureBox.Imageを使用していきます。

表示する前にあらかじめPictureBoxに表示される画像は全体を表示するようにしたいので、

以下の設定を行います。

PictureBox.SizeMode = PictureBoxSizeMode

PictureBoxSizeModeには以下の種類があります。

今回は、Zoomを使用していきます。

NoMode内容
1Normal左上隅に配置されます。
2StretchImagePictureBoxのサイズに合うように調整されます。
3AutoSize格納している画像ファイルと同じ大きさになります。(画素に依存)
4CenterImagePictureBoxが画像ファイルより大きい場合、画像は中央に表示されます。
5Zoom画像はサイズ比率を維持したままで拡大または縮小されます。

ファイルダイアログについては、こちらの記事で紹介しているのでご参考ください。

ファイルダイアログを使って、パソコンに保存されている適当なファイルを操作する方法を紹介しています。ファイルダイアログとは、ファイルを保存する際に保存先等が設定できる小ウィンドウが開きます。このウィンドウをファイルダイアログと呼んでいます。

これらを踏まえて、コードを書いていったのが以下になります。

実行編

それでは実行し確認していきます。

画面起動時

ボタンを押し、ファイルダイアログが開くので

表示する画像を選択し、開くボタンを押します。

※今回は筆者が学生時代に作成したロボットの写真を使っています。

表示がされました……がしかし、横向きで表示されてしまいました。

本来であれば縦向きで表示されてほしかったのですが。。。

これを改善するために、表示される画像の向きを変更するコードを新たに加筆していきます。

向きを変更するには、

PicturaBox.Image.RotateFlip(RotateFlipType)

と書きます。

RotateFlipTypeにも数種類あり、今回は時計回り方向に90°回転させたいので

RotateFlipType.Rotate90FlipNone

と設定します。

加筆したコードがこちらになります。

改めて実行し、先ほどの画像を表示させると、

向きを回転させることができました。



まとめ

今回は簡単にPicturaBoxに自身のパソコンに保存されている画像を

表示する方法について解説しました。

PictureBox.Image = System.Drawing.Image.FromFile(“画像ファイルのパス”)
PictureBox.ImageLocation = “画像ファイルのパス”
この2パターンを覚えておけば、簡単に画像を表示させることができます。

この記事を参考にコードなどを試していただけたらなと嬉しいです。

最後までご覧いただきありがとうございます。

・こちらの書籍を参考にVB.Net勉強しています。

スポンサーリンク