Accorder deux listes en multisélection

cs_cheche Messages postés 14 Date d'inscription mardi 23 avril 2002 Statut Membre Dernière intervention 21 septembre 2004 - 1 avril 2003 à 09:48
cs_cheche Messages postés 14 Date d'inscription mardi 23 avril 2002 Statut Membre Dernière intervention 21 septembre 2004 - 2 avril 2003 à 11:23
Bonjour,

je voudrais accorder deux listes pour lorsqu'on clique sur l'une, l'autre soit sélectionnée en accord.

Pas de problème s'il n'y a pas de multisélection.

Mais quand j'autorise les multisélection ça devient problèmatique.

SI vous avez une idée du code qui permettrait de faire ça.

Merci d'avance

8 réponses

fredlynx Messages postés 662 Date d'inscription mercredi 16 janvier 2002 Statut Modérateur Dernière intervention 16 octobre 2010 3
1 avril 2003 à 10:13
Essaye ça ...

Private Sub List1_Click()
For boucle = 0 To List1.ListCount - 1
If List1.Selected(boucle) = True Then
List2.Selected(boucle) = True
Else
List2.Selected(boucle) = False
End If
Next
End Sub

Private Sub List2_Click()
For boucle = 0 To List2.ListCount - 1
If List2.Selected(boucle) = True Then
List1.Selected(boucle) = True
Else
List1.Selected(boucle) = False
End If
Next
End Sub

<center>http://www.fredlynx.com
</center>
0
cs_cheche Messages postés 14 Date d'inscription mardi 23 avril 2002 Statut Membre Dernière intervention 21 septembre 2004
1 avril 2003 à 15:59
J'avais essayé, mais ça fonctionne pas non plus.
0
fredlynx Messages postés 662 Date d'inscription mercredi 16 janvier 2002 Statut Modérateur Dernière intervention 16 octobre 2010 3
1 avril 2003 à 19:37
??? ça fonctionne pas ?
alors ça 'est la meuilleure du jour :)
J'suis désolé mais moi ça marche très bien... j'peux rien faire d'autre pour toi alors !

<center>http://www.fredlynx.com
</center>
0
cs_cheche Messages postés 14 Date d'inscription mardi 23 avril 2002 Statut Membre Dernière intervention 21 septembre 2004
2 avril 2003 à 09:28
Non ça ne marche pas ! J'ai copié collé ton code (que j'avais déjà testé mais bon, on sait jamais).

Pour preuve essaie par toi-même (multiselect = extended):

Sélectionne deux lignes avec control dans la liste 1, ça sélectionne bien dans la liste 2.
Ensuite tu laches control pour sélectionner une seule ligne dans la liste 1, et là ... tu te retrouves toujours avec deux lignes sélectionnées. Sur les deux premières, une seule est dé-sélectionnée.

Ceci parce que quand tu assignes selected = true, ça déclenche l'évènement click et ça fout la merde.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fredlynx Messages postés 662 Date d'inscription mercredi 16 janvier 2002 Statut Modérateur Dernière intervention 16 octobre 2010 3
2 avril 2003 à 09:47
Arf falait le dire + tot que tu étais en mode Extended !
Ben C vraiment pas plus compliqué ....

Dim ErrorClick As Boolean

Private Sub List1_Click()
If ErrorClick = True Then Exit Sub
ErrorClick = True
For boucle = 0 To List1.ListCount - 1
If List1.Selected(boucle) = True Then
List2.Selected(boucle) = True
Else
List2.Selected(boucle) = False
End If
Next
ErrorClick = False
End Sub

Private Sub List2_Click()
If ErrorClick = True Then Exit Sub
ErrorClick = True
For boucle = 0 To List2.ListCount - 1
If List2.Selected(boucle) = True Then
List1.Selected(boucle) = True
Else
List1.Selected(boucle) = False
End If
Next
ErrorClick = False
End Sub

<center>http://www.fredlynx.com
</center>
0
cs_cheche Messages postés 14 Date d'inscription mardi 23 avril 2002 Statut Membre Dernière intervention 21 septembre 2004
2 avril 2003 à 10:20
Merci, je serais plus précis la prochaine fois ;-).

Bon là j'essaie de comprendre le message que tu m'a laissé sur un drag & drop sur une liste...
0
fredlynx Messages postés 662 Date d'inscription mercredi 16 janvier 2002 Statut Modérateur Dernière intervention 16 octobre 2010 3
2 avril 2003 à 10:25
Ha :)
Tu as compris l'utilité de l'api ?
En fait il est un poil complex parce que la sélection que tu déplace tu peut la droper entre deux item de la liste suivante... Donc on utilise l'api pour avoir l'index de l'item sous la souris et insérer les items déplacé à cet endroit ...

<center>http://www.fredlynx.com
</center>
0
cs_cheche Messages postés 14 Date d'inscription mardi 23 avril 2002 Statut Membre Dernière intervention 21 septembre 2004
2 avril 2003 à 11:23
Disons que je comprends dans les grandes lignes, mais bon je m'accroche :-).

Comme je te l'ai mis dans l'autre topic, j'arrive pas à déclencher les évènements. Je cherche, je cherche ...
0
Rejoignez-nous