Trucos Búsqueda en un ListBox

Es muy común "unir" un textbox a un listbox y seleccionar en el listbox lo que se vaya escribiendo en el textbox. Aunque se puede hacer usando sólo código VB vamos a ver cómo hacerlo más rápidamente mediante el API.

Declaramos en el formulario :

Const LB_FINDSTRING = &H18F
Private Declare Function SendMessage Lib "User32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Integer, ByVal wParam As Integer, lParam As Any) As Long


Para "encontrar" en el listbox lo tecleado en el textbox pondremos en el evento Change del textbox :

List1.ListIndex = SendMessage(List1.hWnd, LB_FINDSTRING, -1, ByVal Text1.Text)

El -1 significa buscar en toda la lista. Podemos poner el índice del elemento a partir del cual queremos buscar.



Trucos Trucos

Visual Basic Página de Visual Basic

Página principal Página principal

www.jrubi.com