DragListItems




Private Sub Form_Load()
' Imposta la proprieta' visibile di txtItem a false

txtItem.Visible = False
'Aggiunge elementi alla lista 1 (lstDraggedItems)

lstDraggedItems.AddItem "Mela"
lstDraggedItems.AddItem "Arancia"
lstDraggedItems.AddItem "Pompelmo"
lstDraggedItems.AddItem "Banana"

lstDraggedItems.AddItem "Limone"
'

End Sub

Nell'evento mouseDown della lista lstDraggedItems inserire il codice seguente:

Private Sub lstDraggedItems_MouseDown(Button As Integer, _ Shift As Integer, X As Single, Y As Single)
'

txtItem.Text = lstDraggedItems.Text
txtItem.Top = Y + lstDraggedItems.Top
txtItem.Left = X + lstDraggedItems.Left
txtItem.Drag
'

End Sub

Inserire il codice seguente nell'evento dragDrop della lista lstDroppedItems:

Private Sub lstDroppedItems_DragDrop(Source As Control, X As Single, Y As Single)
'

If lstDraggedItems.ItemData(lstDraggedItems.ListIndex) = 9 Then
Exit Sub
End If
' Per essere sicuri che questo elemento non sia selezionato di nuovo lstDraggedItems.ItemData(lstDraggedItems.ListIndex) = 9

lstDroppedItems.AddItem txtItem.Text
'

End Sub

Adesso e' possibile trascinare gli elementi da lstDraggedItems per depositarli in LstDroppedItems.

Notare che non e' possibile trascinare dalla seconda lista alla prima. Ancora, l'elemento trasportato nella seconda lista resta anche nella prima. Queste limitazioni potranno essere eliminate tramite modifiche al codice apportate dall'utente.

ZD Tips © 1998 by Mauro Rossi










( draglistitems.html )- by Paolo Puglisi - Modifica del 17/12/2023