Listbox avec barre horizontale

Contenu du snippet

Peu de code pour ajouter une HScrollbarre

Source / Exemple :


Dans un .Bas mettre :
Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Long) As Long

Dans votre code ou ailleur dans le projet :
Public Sub AddBarreHoriz(ByRef CtrlLstBox As Object, ByVal FormParent As Object, ByVal Large As Integer)
'Ajoute une barre horizontale à un contrôle
'Indiquer à Large  : 0     => Annule la barre horizontale
'                    >0    => Nb Caractères maxi de large
Const NUL = &O0
Const LB_SETHORIZONTALEXTENT = &H400 + 21
Dim ListHwnd As Long, Scl As Integer, Réponse As Long

On Error Resume Next
Select Case Large
Case Is > 0:   Large = (Large / 15) * 110
Case Else:   Large = 1
End Select
Scl = FormParent.ScaleMode
FormParent.ScaleMode = 3
'Récupère le focus du control (ListBox) & refresh
'CtrlLstBox.SetFocus
ListHwnd = CtrlLstBox.hwnd
'Ajoute la barre horizontale
Réponse = SendMessage(ListHwnd, LB_SETHORIZONTALEXTENT, Large, NUL)
FormParent.ScaleMode = Scl
End Sub

Conclusion :


Une Form avec une Listbox et appeler la Sub décrite ci-dessus.

A voir également

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.