Scroll dans listbox
c
Bonjour,
J'aimerais savoir s'il est possible d'utiliser la molette de la souris pour descendre ou monter dans une listbox???
Je vous remercie d'avance.
f
Bonjour,
Je n'ai pas de solution pour le scroll sur une listBox mais je vous propose une autre astuce avec MouseMove sur une listBox:
Private Sub ListBox1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
'récupère position vertical curseur souris
coordY = Y
'longueur listbox = nombre éléments de la liste x 10px par éléments
longueurlist = ListBox1.ListCount * 10
'hauteur listbox
htlistbox = ListBox1.Height
'transforme position curseur en position éléments de la liste par simple règle de trois
'arrondir à un chiffre rond
yyy = Int(Int(Y * ListBox1.ListCount / htlistbox) * 10)
'sélectionne l'élément de la liste par rapport à la position du curseur
ListBox1.ListIndex = yyy / 10
End Sub
L'avantage de ce code est qu'il n'y à pas de clics ou scroll à effectuer.
Une autre solution consiste à placer un CommandButton à côté de la listBox et de la même hauteur que la listBox et d'effectuer le MouseMove sur le CommandButton, et de déplacer la sélection de l'élément dans la listBox :
Private Sub CommandButton1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
'récupère position vertical curseur souris
coordY = Y
'longueur listbox = nombre éléments de la liste x 10px par éléments
longueurlist = ListBox1.ListCount * 10
'hauteur listbox
htlistbox = CommandButton1.Height
'transforme position curseur en position éléments de la liste par simple règle de trois
'arrondir à un chiffre rond
yyy = Int(Int(Y * ListBox1.ListCount / htlistbox) * 10)
'sélectionne l'élément de la liste par rapport à la position du curseur
ListBox1.ListIndex = yyy / 10
End Sub
J'espère que ça pourra vous être utile
Salutations