ドラッグアンドドロップで への返答
投稿で使用できる特殊コードの説明。(別タブで開きます。)
以下の返答は逆順(新しい順)に並んでいます。
投稿者 (削除されました)  ()
投稿日時
2009/9/18 18:04:19
(削除されました)
投稿者 (削除されました)  ()
投稿日時
2009/9/18 17:39:15
(削除されました)
投稿者 kent  (社会人)
投稿日時
2009/9/18 04:29:22
>それで?説明は手を抜かずにしましょうよ。
すみません。
下記のページを参考に(というかほとんど)してデバッグしたのですが、全く動作しません
http://homepage1.nifty.com/rucio/main/dotnet/shokyu/standard22.htm
>PictureBox1とPictureBox2の画像をD&Dで入れ替えるコードを書いてみました。
>参考になれば。
有り難うございます。
しかし、ドラッグしようとすると移動禁止マークがでて,
どうしたわけか動きません。
なぜなのでしょうか?
すみません。
下記のページを参考に(というかほとんど)してデバッグしたのですが、全く動作しません
http://homepage1.nifty.com/rucio/main/dotnet/shokyu/standard22.htm
>PictureBox1とPictureBox2の画像をD&Dで入れ替えるコードを書いてみました。
>参考になれば。
有り難うございます。
しかし、ドラッグしようとすると移動禁止マークがでて,
どうしたわけか動きません。
なぜなのでしょうか?
投稿者 (削除されました)  ()
投稿日時
2009/9/18 02:29:01
(削除されました)
投稿者 よねKEN  (社会人)
投稿日時
2009/9/17 23:13:39
> たぶん↓のページのことをしたいのだと思いますが。
PictureBox1の画像をPictureBox2に、PictureBox2の画像をPictureBox1に、
といった移動(もしくは入替?)を実現したいのかなと思ったのですが、
私の提示したページ
> http://dobon.net/vb/dotnet/graphics/pictureboxdragdrop.html
の内容はずばりというわけではないですね。
このページとそのリンク先をしっかり読み込んで理解すれば実現はできますけど。
PictureBox1とPictureBox2の画像をD&Dで入れ替えるコードを書いてみました。
参考になれば。
--
Private Sub PictureBox_MouseDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseDown, PictureBox2.MouseDown
Me.DoDragDrop(sender, DragDropEffects.All)
End Sub
Private Sub PictureBox_DragDrop(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles PictureBox2.DragDrop,PictureBox1.DragDrop
If e.Data.GetDataPresent(GetType(PictureBox)) Then
Dim source As PictureBox = DirectCast(e.Data.GetData(GetType(PictureBox)), PictureBox)
DirectCast(sender, PictureBox).Image = source.Image
source.Image = Nothing
End If
End Sub
Private Sub PictureBox_DragEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles pictureBox1.DragEnter,PictureBox2.DragEnter
e.Effect = DragDropEffects.Move
End Sub
PictureBox1の画像をPictureBox2に、PictureBox2の画像をPictureBox1に、
といった移動(もしくは入替?)を実現したいのかなと思ったのですが、
私の提示したページ
> http://dobon.net/vb/dotnet/graphics/pictureboxdragdrop.html
の内容はずばりというわけではないですね。
このページとそのリンク先をしっかり読み込んで理解すれば実現はできますけど。
PictureBox1とPictureBox2の画像をD&Dで入れ替えるコードを書いてみました。
参考になれば。
--
Private Sub PictureBox_MouseDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseDown, PictureBox2.MouseDown
Me.DoDragDrop(sender, DragDropEffects.All)
End Sub
Private Sub PictureBox_DragDrop(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles PictureBox2.DragDrop,PictureBox1.DragDrop
If e.Data.GetDataPresent(GetType(PictureBox)) Then
Dim source As PictureBox = DirectCast(e.Data.GetData(GetType(PictureBox)), PictureBox)
DirectCast(sender, PictureBox).Image = source.Image
source.Image = Nothing
End If
End Sub
Private Sub PictureBox_DragEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles pictureBox1.DragEnter,PictureBox2.DragEnter
e.Effect = DragDropEffects.Move
End Sub
投稿者 よねKEN  (社会人)
投稿日時
2009/9/17 22:30:02
>PictureBox1の画像を PictureBox2にドラッグアンドドロップして画像を移動
>させたいのですが、できません。
それで?説明は手を抜かずにしましょうよ。
たぶん↓のページのことをしたいのだと思いますが。
ピクチャボックスに表示されている画像をドラッグ&ドロップする
http://dobon.net/vb/dotnet/graphics/pictureboxdragdrop.html
>させたいのですが、できません。
それで?説明は手を抜かずにしましょうよ。
たぶん↓のページのことをしたいのだと思いますが。
ピクチャボックスに表示されている画像をドラッグ&ドロップする
http://dobon.net/vb/dotnet/graphics/pictureboxdragdrop.html
投稿者 kent  (社会人)
投稿日時
2009/9/17 21:36:32
PictureBox1の画像を PictureBox2にドラッグアンドドロップして画像を移動
させたいのですが、できません。
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
PictureBox1.AllowDrop = True
PictureBox2.AllowDrop = True
End Sub
Private Sub PictureBox1_DragEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles pictureBox1.DragEnter,PictureBox2.DragEnter
If e.Data.GetDataPresent(DataFormats.FileDrop) Then
e.Effect = DragDropEffects.Copy
End If
End Sub
Private Sub PictureBox1_DragDrop(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles PictureBox2.DragDrop,PictureBox1.DragDrop
Dim FileName As String
FileName = e.Data.GetData(DataFormats.FileDrop)(0)
PictureBox1.Image = Image.FromFile(FileName)
End Sub
させたいのですが、できません。
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
PictureBox1.AllowDrop = True
PictureBox2.AllowDrop = True
End Sub
Private Sub PictureBox1_DragEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles pictureBox1.DragEnter,PictureBox2.DragEnter
If e.Data.GetDataPresent(DataFormats.FileDrop) Then
e.Effect = DragDropEffects.Copy
End If
End Sub
Private Sub PictureBox1_DragDrop(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles PictureBox2.DragDrop,PictureBox1.DragDrop
Dim FileName As String
FileName = e.Data.GetData(DataFormats.FileDrop)(0)
PictureBox1.Image = Image.FromFile(FileName)
End Sub
もう少し考えてみます。