我正在準備VB.NET中的國際象棋程序。所以我想創建一個拖放事件。在拖放事件中,原始圖像保持不變,並將副本放置在任何要放置的位置。在VB.NET中拖放和拖放
但我想要做的是,我想要在圖像被選中後立即移除原件。任何想法我怎麼能做到這一點?
我的用戶界面由64個圖片框組成,它們排列成8行,並且它們都有各自圖片。
請幫幫我。
我正在準備VB.NET中的國際象棋程序。所以我想創建一個拖放事件。在拖放事件中,原始圖像保持不變,並將副本放置在任何要放置的位置。在VB.NET中拖放和拖放
但我想要做的是,我想要在圖像被選中後立即移除原件。任何想法我怎麼能做到這一點?
我的用戶界面由64個圖片框組成,它們排列成8行,並且它們都有各自圖片。
請幫幫我。
@Hans is correct;將它作爲一個PictureBox做起來會容易得多。但是,如果您被困在當前使用的方法中,請更改源PictureBox上MouseMove函數中的代碼,使其看起來像這樣。它基本上將圖像複製到變量,然後將源圖像設置爲Nothing。當然,如果不進行移動(將源圖像恢復爲nImage的值),並且在移動完成後處理變量的處理,您將必須處理。
Private Sub PictureBox1_MouseMove(ByVal sender As Object, ByVal e As _
System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseMove
If m_MouseIsDown Then
' Initiate dragging and allow either copy or move.
Dim iImage As Image
iImage = PictureBox1.Image
PictureBox1.Image = Nothing
PictureBox1.DoDragDrop(iImage, DragDropEffects.Copy Or _
DragDropEffects.Move)
End If
m_MouseIsDown = False
End Sub
這很好! –
你開始了這個錯誤,只使用*一* PictureBox。使用它的Paint事件繪製棋盤和棋子。移動一塊現在很簡單,只需在另一個位置繪製即可。 –
@Hans如何繪製作品? –