Listview

cs_yoda Messages postés 19 Date d'inscription mardi 29 janvier 2002 Statut Membre Dernière intervention 21 juillet 2005 - 29 août 2002 à 12:09
cs_raff Messages postés 182 Date d'inscription dimanche 18 août 2002 Statut Membre Dernière intervention 5 janvier 2004 - 29 août 2002 à 21:00
Amis développeurs bonjour,

Je voudrai empécher la selection dans une listview sans utiliser enable = false. Lorsque que je clique sur la liste je ne veux pas pouvoir sélectionner un éléments. Il faut aussi qu'a tout moment je puisse mettre dans mon code la possibilté de pouvoir reselectionner dans la listview.

Merci pour votre aide

3 réponses

TheSaib Messages postés 2368 Date d'inscription mardi 17 avril 2001 Statut Modérateur Dernière intervention 26 décembre 2007 22
29 août 2002 à 16:37
si tu peux pas avec les propriétés il faut utiliser les API notemment sendMessage pour les listviews, mais c pas gagné d'avance , mais ca doit se trouver sur le net

|The S@ib|
VBP2P project
0
cs_raff Messages postés 182 Date d'inscription dimanche 18 août 2002 Statut Membre Dernière intervention 5 janvier 2004 3
29 août 2002 à 16:49
J'ai eu à faire ceci une fois avec un list normal et voilà ce que j'ai fait. Il s'agit d'affecter une propriété spéciale à chaque item - ici ItemBackColor puis de gérer le tout dans l'événement click :

If lstActions.ItemBackColor(i) = &HC0C0FF And
lstActions.Selected(i) = True Then

lstActions.Selected(i) = False
End If

Tu peux faire un tableau variable ex :
dim LV_Tableau(0 to 10 as boolean)...puis tu remplis le tableau en même temps que le listview en mettant l'index de l'item puis true si tu peux sélectionner l'item....enfin...c'est très possible.
raff
0
cs_raff Messages postés 182 Date d'inscription dimanche 18 août 2002 Statut Membre Dernière intervention 5 janvier 2004 3
29 août 2002 à 21:00
bon alors voilà le code, c'est très facile:

Option Explicit
Dim x(1 To 10) As Boolean

Private Sub Form_Load()
ListView1.ListItems.Add 1, , "Allo"
x(1) = True
End Sub

Private Sub ListView1_ItemClick(ByVal Item As ComctlLib.ListItem)
If x(ListView1.SelectedItem.Index) = True Then
ListView1.SelectedItem.Selected = False
End If
End Sub
0
Rejoignez-nous