Element in ListBox suchen

Element in ListBox suchen via SendMessage, LB_FINDSTRING
Um zu prüfen, ob sich ein Element bereits in einer ListBox befindet, muss man nicht alle Elemente über eine Schleife durchgehen und vergleichen, bis das Element gefunden oder das Ende der ListBox erreicht wurde. In folgendem Beispiel wird die Zeichenfolge "Peter" in der ListBox List1 gesucht:
Private Declare Function SendMessage Lib "user32.dll" Alias _
"SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, _
ByVal wParam As Long, ByVal lParam As String) As Long
Private Const LB_FINDSTRING As Long = &H18F&
Private Sub Form_Load()
With Me.List1
Call .AddItem("Karl")
Call .AddItem("Peter")
Call .AddItem("Frank")
Call .AddItem("Brian")
Call .AddItem("Adam")
Call .AddItem("Peter")
End With
Debug.Print "Suche nach ""Peter"":" & _
CStr(SendMessage(Me.List1.hWnd, LB_FINDSTRING, -1&, "Peter"))
End Sub
Im Direktfenster wird die zuerst gefundene Positionsnummer der gesuchten Zeichenfolge ausgegeben; die erste Position erhält Nummer Null; nicht gefundene Zeichenfolgen (z. B. Teilstrings) werden mit minus 1 gekennzeichnet.

Sponsoren und Investoren

Sponsoren und Investoren sind jederzeit herzlich willkommen! Wenn Sie die Information(en) auf diesen Seiten interessant fanden, freuen wir uns über Ihren Förderbeitrag. Empfehlen Sie uns auch gerne in Ihren Netzwerken. Herzlichen Dank!

Nutzen Sie unsere Suchfunktion:

Nach oben Sitemap
Impressum Datenschutz

Hinweis: Diese Webseite kann Werbeanzeigen und Werbeeinblendungen oder eingebundene Links von Diensten und Inhalten Dritter enthalten. Beachten Sie dazu unsere Datenschutzerklärung.