• 締切済み

VisualBasic2008を使い、画像のドラッグ&ドロップをしたい

VisualBasic2008を使い、画像のドラッグ&ドロップをしたい まだVB2008の勉強を始めたばかりの初心者です。 PictureBox1~PictureBox4に表示されている画像をドラッグ&ドロップでPictureBox5にコピーして表示させたいのですが、どのようなプログラムにすればいいのかが分かりません。 PictureBox5には何度でもPictureBox1~PictureBox4の画像をドラッグ&ドロップで入れ替えができ、PictureBox1~PictureBox4の画像はそのままになるようにしたいです。 よろしくお願いします。

みんなの回答

  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

PictureBoxのAllowDropプロパティを Trueにすれば D&D(ドラッグ&ドロップ)が可能になります D&Dを行うには 元のPictureBox1-4のMouseDownイベントで DoDragDropを使えば実行できるでしょう ' 送り手側 private Sub PictureBox_MouseDown(ByVal s as Object, byVal e as MouseEventArgs) _   Handler PictureBox1.MouseDown, PictureBox2.MouseDown,   PictureBox3.MouseDown, PictureBox4.MouseDown   Dim oPic as PictureBox = CType(s, PictureBox )   ' 受け側のD&Dを許可   PictureBox5.AllowDrop = True   ' D&Dを実行   oPic.DoDragDrop( oPic.Image, DragDropEffect.Copy ) End Sub ' 受けて側 Private Sub PictureBox5_DragEnter( s as Object, ByVal e as DragEventArgs )   ' もしD&Dのデータがビットマップなら   if e.Data.GetDataPresent("Bitmap") then    ' カーソルを変更 e.Effect = DragDropEffect.Copy   else    ' カーソルを禁止マークに e.Effect = DragDropEffect.None   end if End Sub Private Sub PIctureBox5_DragDrop( s as Object, ByVal e as DragEventArgs )   ' もしD&Dのデータがビットマップなら   if e.Data.GetDataPresent("Bitmap") then     PictureBox5.Image = e.Data.GetData("Bitmap")   end if End Sub といった具合で出来そうです エラー処理を何もしていませんの必要な箇所の修正をしましょう 字下げ(インデント)には全角スペースを使っていますので エラーになるようでしたら置換してください

関連するQ&A

  • PictureBoxのドラッグ&ドロップについて

    PictureBox1をドラッグ&ドロップしてPictureBox2に画像を移したいのですが、 どうすればいいのかわかりません。 テキストボックスでの作り方だったらわかるのですが・・・。 教えて下さい。

  • (VC++2010)画像をドラッグしたいのですが

    VC++初心者です。 学校の課題で、 Buttonを押して、画像ファイルを読み込みpictureBox1に表示 ↓ pictureBox1上でマウスドラッグをして、ドラッグで選択された長方形の部分の画像をコピーし、pictureBox2に表示 というプログラミングを書きたいのですが、ドラッグのところで詰まってしまっています。 ドラッグを開始した座標などをどう上手く使って行けばいいのかがわかりません… 初心者すぎて質問の仕方もイマイチわからないのですがどなたか教えて頂けると幸いです。

  • ドラッグ&ドロップについてです。(VB.NET)

    フォーム上に「PictureBox」コントロールを置いた状態で実行し、その「PictureBox」にデスクトップ等からファイルやフォルダをドラッグ、ドロップしまして、そのファイルやフォルダのパス名を取得するにはどうすればいいですか? そのプログラムのサンプルがあるサイトでもいいです。

  • VisualBasic6でドラック&ドロップのアプリを作成したい

    VisualBasic6で、作成したアプリケーションのフォーム上に、他のファイルをドラック&ドロップした場合に、 ファイル名をフォーム上やラベルに表示させたいのですが、参考になるソースはありますか?

  • VB6でのドラッグ&ドロップについてです

    VB6でのことなんですが、リネームツールを作ろうと思って色々やってるのですが、うまくいきません。 フォルダをドラッグ&ドロップをして、 text1にフォルダの中のファイル名を表示して、text2にファイル名をコピーしてリネーム、というようなものを作りたいと考えています。 フォルダをドラッグ&ドロップして表示されるのが、そのフォルダのフルパスになってしまいます。 ドラッグ&ドロップしたフォルダの中のファイル名だけを表示する方法はどうすればいいのでしょうか? よろしくお願いします。

  • VisualBasicドラッグ&ドロップ

    VisualBasic2010 Express環境での質問です。 業務用ツールとしてある情報の含まれるdatファイルを フォームのDataGridにD&Dすると内部の情報を 項目ごとにDataGridに入れて表示するプログラムを作成しています。 現在、1ファイルでは上手く動く状態です。 複数ファイルの場合にドラッグしたファイル名を取得したいのですが どのように取得すればよいのでしょうか?

  • ListViewで複数項目のドラッグ&ドロップ

    やりたいことは、エクスプローラのようなアイテムのドラッグ&ドロップです。 VB付属のリストビューをそのまま使うと、大きいアイコンで表示した時、複数選択してドラッグしても動くアイテムは、1つとなってしまいます。 複数アイテムを動かす方法を知っている方がいましたら教えてほしいのですが。 環境は、 Windows2000SP3 VisualBasic6SP5 です。

  • 画像などのドラッグ&ドロップが出来ない!

    画像や音声ファイルなど、デーダファイルのドラッグ&ドロップが出来なくなってしまいました。 PCを以前の状態に復元(?)すると一応直るのですが… 3日位すると、またドラッグ&ドロップが出来なくなってしまいます。 原因がさっぱりわからず… このまま復元をしつづけるしかないのでしょうか? アドバイスお願いします。 ヽ(>ω<)

  • jqueryを利用してインラインフレームに画像をドラッグ&ドロップした

    jqueryを利用してインラインフレームに画像をドラッグ&ドロップしたい jqueryを使って、画像をドラッグしたり、それを自分で設定したエリアにドロップすることはできました そこで、インラインフレームを使って表示している外部プログラムにドロップエリアを作成し、親フレームからインラインフレームに画像をドラッグ&ドロップして要素を渡したいと思ったのですがやり方が分かりません よろしくお願いします

  • ドラック&ドロップができない

    新しくVistaのパソコンを買ったのですがそのパソコンでは ドラック&ドロップで別のプログラムに移行できないのです。 どういうことかと言うと、インターネットでアドレスをドラックして、すでにツールバー上に開かれている別のプログラムにドロップしようと してもウインドウが別のウインドウの下になったままホップアップし てくれないのです。以前のパソコンでは、できた動作なのでなぜ出来 ないのかがわかりません。 どなたか、どうすればドラック&ドロップできるようになるか、ご存知でしたら教えてください。

専門家に質問してみよう