Drag and drop avec 2 listview

Soyez le premier à donner votre avis sur cette source.

Snippet vu 12 336 fois - Téléchargée 48 fois

Contenu du snippet

Commencez par créer 2 listview sur votre form, que vous nommerez Listview1 et Listview2.
Pour le fonctionnement, tractez un des items du listview1 sur le listview2.

Source / Exemple :


Private Sub Form_Load()
    Dim LstItem As ListItem

    'Ajoute des items au listview1
    Set LstItem = ListView1.ListItems.Add(, , "Element1")
    Set LstItem = ListView1.ListItems.Add(, , "Element2")
    Set LstItem = ListView1.ListItems.Add(, , "Element3")
    Set LstItem = ListView1.ListItems.Add(, , "Element4")
    Set LstItem = ListView1.ListItems.Add(, , "Element5")
End Sub

Private Sub ListView1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
    
    'Trouve l'item sélectionné   
    Set ListView1.SelectedItem = ListView1.HitTest(x, y)

    'Indique l'icone visible lors du déplacement
    ListView1.DragIcon = LoadPicture("C:\VB\drag.ico")
    
    'Commence le déplacement
    ListView1.Drag vbBeginDrag
End Sub

Private Sub ListView2_DragDrop(Source As Control, x As Single, y As Single)
    Dim LstItem2 As ListItem

    'Ajoute l'item déplacé dans le listview2
    Set LstItem2 = ListView2.ListItems.Add(, , Source.SelectedItem.Text)
End Sub

Conclusion :


Et c'est tout...

A voir également

Ajouter un commentaire

Commentaire

jockos
Messages postés
321
Date d'inscription
dimanche 22 octobre 2000
Statut
Membre
Dernière intervention
14 mai 2005
2 -
Rajoutez:
listView1.ListItems.Remove (Source.SelectedItem.Index)

Dans la procédure List_View2_DragDrop afin que l'élément soit déplacé, et non copier vers l'autre ListView...

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.