RE:Drag & drop con listview
Publicado por
Ezequiel (1 intervención) el 26/11/2003 17:29:28
en el evento MouseMove de los listviews
Private Sub lvw1_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)
Dim Item As ListItem
'evaluar HitTest en coordenada actual
Set Item = lvw1.HitTest(x, y)
'si item no es nada, o sea es el selecteditem
If not Item Is Nothing Then
'si se ha presionado el boton izquierdo
If Button = vbKeyLButton Then
'crear imagen de arrastrar a partir del elemento seleccionado
lvw1.SelectedItem.CreateDragImage
'comenzar el arrastre manualmente
lvw1.Drag vbBeginDrag
End If
End If
End Sub
en el evento DragDrop de los listviews
Private Sub lvw2_DragDrop(Source As Control, x As Single, y As Single)
Dim Item As ListItem
With Source
If .Name = "lvw1" Then 'aceptar solo si es el otro listview el origen
'Source.SelectedItem es el elemento seleccionado del otro listview (lvw1) con el que empezamos el arrastre
'o podemos hacer un For y recorrer en Source.ListItems y seleccionar los que tengan la propiedad Selected=TRUE
End If
End With
End Sub