Trucos Seleccionar elementos de un ListBox mediante código

Mediante el API podemos seleccionar y "des-seleccionar" todos los elementos de un listbox con facilidad.

Declaramos en un módulo :

Declare Function SendMessageByNum Lib "user32" Alias "SendMessageA"
        (ByVal hwnd As Long, ByVal wMsg As Long,ByVal wParam As Long,
         ByVal lParam As Long) As Long
Public Const LB_SETSEL = &H185
Public Const LB_SELITEMRANGEEX = &H183

No olvides que el ListBox debe estar con MultiSelect = 1 ó 2

Para seleccionar todos los elementos :

  Dim res As Long
  res = SendMessageByNum(List1.hwnd, LB_SETSEL, True, -1)

Para que no haya ninguno seleccionado :

  Dim res As Long
  res = SendMessageByNum(List1.hwnd, LB_SETSEL, False, -1)


Para seleccionar un grupo de elementos :

  Dim res As Long, prim as long, ult as long

  prim = 2: ult = 4
res = SendMessageByNum(List1.hwnd, LB_SELITEMRANGEEX, prim,ult)



Trucos Trucos

Visual Basic Página de Visual Basic

Página principal Página principal

www.jrubi.com