2015年11月24日火曜日

P002-ファイルをドラッグ&ドロップで開く

今日の目標→

前回のプログラム(ImageView)に手を加え、ドラッグ&ドロップで画像ファイルを開けるようにする。

●プロジェクトの作成

  1. 「ImageView2」という名前で、新規プロジェクトを作る
  2. Form1.csのコードを開き、前回のForm1.csのコードをコピペする
  3. コードを次のように修正する。

しかしこれ<textarea>タグでコードを表示してるんだけど読みにくいな。別の表示法にしたほうがいいかな。まあ、おいおい考えよう。

●要点の解説

フォームに対してドラッグ&ドロップを行うには、少なくとも次の3つが必要だ。

  • DragEnterイベントの処理ルーチンを追加する
  • DragDropイベントの処理ルーチンを追加する
  • AllowDropフラグをtrueに設定する

イベント処理ルーチンの入力はVisual Studioが助けてくれるので楽ちんである。たとえばDragEnter処理を書く場合は次のようになる。

  1. まず「this.DragEnter +=」まで手で入力する
  2. TABキーを押すと、自動的にイベントハンドラの枠組みのコードが挿入される
  3. Enterキーを押すと確定する。Enterキーを押す前にハンドラ名の変更もできるが、まあ必要ないと思う
  4. イベントハンドラの枠組みができたら、あとは中身を自分でコーディングする

DragEnterハンドラとDragDropハンドラの中身は、定型の処理なので説明は省略する。わからない部分があればコメント欄ででも質問してください。できる範囲で答えます。

コードを書き終えたらさっそく実行してみよう。Windowsのフォルダから適当な画像ファイルをドラッグして、このプログラムのフォームにドロップすれば、画像が表示されるはずだ。

(実行画面が入る予定)

0 件のコメント:

コメントを投稿