listview控件的拖入功能如何实现?

来源:百度知道 编辑:UC知道 时间:2024/05/24 09:49:38
比如把桌面上的文件夹或其它一些文件拖入listview控件

下面的例子也许对你有帮助:拖放操作
1 从我的电脑拖动文件到 Text1
2 从 Text2 拖动文字到 Text1

Private Sub Form_Load()
Text1.OLEDropMode = 1 '放操作为人工方式,自动触发 OLEDragOver(移动) 和 OLEDragDrop(放下) 事件
Text2.OLEDragMode = 1 '拖启动操作方式为自动,自动触发 OLEStartDrag、OLEGiveFeedback、OLECompleteDrag 事件
End Sub

Private Sub Text1_OLEDragDrop(Data As DataObject, Effect As Long, Button As Integer, Shift As Integer, X As Single, Y As Single)
'放下事件,当控件的 OLEDropMode=1 触发的 OLE 放事件
Dim I As Long, nStr As String

If Data.GetFormat(vbCFText) Then nStr = Data.GetData(vbCFText)

If Data.GetFormat(vbCFFiles) Then
For I = 1 To Data.Files.Count
nStr = nStr & Data.Files(I) & vbCrLf
Next
End If

Text1.SelText = nStr
End Sub

Private Sub Text1_OLEDragOver(Data As DataObject, Effect As Long, Button As Integer, Shift As Integer, X As Single, Y As Single, State As Integ