|
Данный пример покажет, как можно
воспользоваться Drag&Drop при переносе элементов
из одного ListBox в другой. Расположите на форме 2
элемента ListBox. Установите свойства
элементов OLEDragMode = 1 'Automatic и OLEDropMode
= 1 'Manual. Попробуйте после запуска программы
перетащить элемент из 1-го ListBox'а в другой. Private Sub Form_Load()
List1.AddItem "11"
List1.AddItem "22"
List1.AddItem "33"
List1.AddItem "44"
List1.AddItem "55"
End Sub
Private Sub List1_OLEStartDrag(Data As DataObject, AllowedEffects As Long)
Dim i As Integer
Dim strdata As String
For i = 0 To List1.ListCount - 1
If List1.Selected(i) = True Then
strdata = strdata & List1.List(i) & vbCrLf
End If
Next i
Data.SetData strdata
End Sub
Private Sub List2_OLEDragDrop(Data As DataObject, Effect As Long, Button As Integer, Shift
As Integer, X As Single, Y As Single)
Dim intin As Integer
Dim intstart As Integer
intstart = 1
intin = InStr(Data.GetData(1), vbCrLf)
Do
On Error Resume Next
List2.AddItem Replace(Mid(Data.GetData(1), intstart, (InStr(intstart + 1, Data.GetData(1),
vbCrLf) - intstart) + 1), vbCr, "")
If Err = 5 Then
List2.AddItem Replace(Mid(Data.GetData(1), intstart + 1), vbCrLf, "")
Exit Do
End If
intstart = intin + 2
intin = InStr(intstart, Data.GetData(1), vbCrLf)
Loop Until intin = 0
End Sub
|
|