当用户将某一个控件拖动到一个窗体或控件上,并释放鼠标按钮时将引发DragDrop事件。
Private Sub Form_DragDrop(Source As Control, X As Single, Y As Single)
Private Sub MDIForm_DragDrop(Source As Control,X As Single, Y As Single)
Private Sub Object_DragDrop([Index As Integer,] Source As Control, X As Single, Y As Single)
对DragDrop事件的说明:
uObject、Index、X、Y的含义同前面的鼠标事件。
vSource为被拖动的控件,此参数可用来取得或设置源控件的属性和方法,例如:Source.Visible= 0。
在拖放操作中,有两个术语非常重要:源和目标。源是被拖动的控件,此控件可以是除Menu、Timer、Line、Shape外的任一对象;目标是其上放置控件的对象,此对象可以是能识别DragDrop事件的窗体或控件。当鼠标指针位于某控件的边框内释放按钮时,控件将成为目标;当指针位于窗体上无控件的区域上释放鼠标按钮时,窗体将成为目标。

如图所示,当我们用鼠标将Image1拖动到Image2上并释放鼠标按钮时,Image1是源,它是被拖动的对象,Image2是目标,它是拖动到并放置在的对象。这时,识别DragDrop事件的将是目标对象Image2。反之,若将Image2拖动到Image1上并释放鼠标按钮的话,则Image2是源,而Image1是目标,这时识别DragDrop事件的对象将是Image1。
例题1:设计如图所示的应用程序,当用鼠标拖动窗体上的文件夹图标到文件柜处并释放鼠标按钮时,文件夹图标将从窗体上消失,且打开的文件柜将关闭。

Private Sub Image2_DragDrop()
Source.Visible= False
Image2.Picture = LoadPicture(
"C:\ProgramFiles
\MicrosoftVisual Studio
\Common\Graphics\Icons
\Office\Files03a.ico")
End Sub