2015年12月3日木曜日

P010-ネットの画像を読み込む

今日の目標→

いまどきのプログラムは、やはりネットに接続できないと話にならない。今回はその最も簡単な例として、ネットから画像を取得してピクチャボックスに表示するプログラムを作ってみる。

●MyLibの修正

その前に、前回発見したMyLibライブラリの不具合(namespaceに全角文字を発見!)を修正しておく。コードを直すついでに、行数上限を変えるSetMaxLines()メソッドも追加した。

修正したライブラリをコンパイルしたら、「MyLibV02.dll」というファイル名で保存する。今後ライブラリの修正や機能強化のたびに、「V」の後ろの番号を増やしていく予定である。

●プログラム本体

  1. NetJobという名前で、プロジェクトを作成する
  2. ソリューションエクスプローラの「参照」で、MyLibV02.dllの参照を追加する
  3. Form1.csを開き、次のコードを入力する

プログラムを起動し、左下の入力欄に画像ファイルのURLを入力して「画像を読み込む」ボタンを押すと、ピクチャボックスに表示されるはずなのでお試しを。

今回から始まる「ネット接続」シリーズの土台となるプログラムなので、ウィンドウ構成もちょっと凝ってみた。基本は上下に分割されたウィンドウがあって、上部にデータ表示ウィンドウ(今回はピクチャボックス)、下部にレポート出力用のテキストボックスを配置している。

●要点の解説

ネット接続の中心になるのはWebClientクラスだ。このクラスは指定されたURLに接続し、そこからデータを読み出すという縁の下の作業を受け持つ。そのデータをどのように処理するかは、個々のプログラムの仕事である。

今回は画像の取得なので、Image.FromStream()メソッドでストリームからデータを読み出すだけでImage型の画像が作られる。

0 件のコメント:

コメントを投稿