Comment puis-je autoriser la sélection d'une seule ligne dans une seule ListBox lorsque j'ai plusieurs ListBox dans ma Form ?
En effet, avec 3 ListBox, par défaut, je peux selectionner 1 ligne dans chacune d'entre elle, alors que je souhaite sélectionner 1 seule ligne au total, dans toute ma Form.
Dans ta form, tu crées par exemple deux listbox, list1 et list2, ainsi qu'un timer: timer1
Et voici le code qui fera ce que tu demandes:
Option Explicit
DefInt A-Z
Private Sub Form_Load()
Dim X As Integer
For X=1 to 26
List1.Additem "La lettre " + Chr$(X+64)
List2.Additem "La lettre " + Chr$(X+64)
Next X
Timer1.Interval=1
Timer1.Enabled=True
End Sub
Private Sub Timer1_Timer()
Static PrevList1
Dim TopIndex_List1 As Integer
'Obtient l'index du premier élément de la liste visible
TopIndex_List1=List1.TopIndex
'le TopIndex a-t-il changé ?
If TopIndex_List1 <> PrevList1 Then
'Si oui, TopIndex de List2=TopIndex de List1,
'pour que toutes les listes défilent ensemble
List2.TopIndex=TopIndex_List1
PrevList1=TopIndex_List1
End If
'Sélection de l'élément de même position dans chacune des listes
If List1.ListIndex <> List2.ListIndex Then
List2.ListIndex=List1.ListIndex
End If
End Sub
Voilà, avec ceci tu devrais t'en sortir si tu as le moindre problème, n'hésites pas à me contacter...