Autor Tema: SendMessage (Scroll a un ListView)  (Leído 2901 veces)

0 Usuarios y 1 Visitante están viendo este tema.

xmbeat

  • Kilobyte
  • **
  • Mensajes: 84
  • Reputación: +3/-1
  • la vida no tiene sentido sin Dios
    • Ver Perfil
SendMessage (Scroll a un ListView)
« en: Marzo 31, 2010, 07:45:11 pm »
Buenas, en estos momentos estoy codeando algo de Base De Datos, y pues estaba realizando un buscador en un ListView, los resultados de busqueda se muestran en un ListBox el cual almacena el numero de fila en que se encontro la palabra buscada, andaba experimentando para que hacerle click a dicho elemento del ListBox haga un scroll al ListView para que aparezca marcado el elemento alli. Solo que el resultado me parece poco profesional ya que para hacerlo hago primero un scroll al inicio y luego otro al elemento, mas bien yo quiero hacer  algo como el "LB_FindSting" el cual marca automaticamente el elemento. y hace un scroll hacia el, en cuyo caso no puedo hacer lo mismo con el listview. alguien conoce otro metodo.


el code que tengo para el click al listbox es este:
Código: [Seleccionar]
ListView1.SetFocus
Me.ListView1.ListItems(Val(List1.Text)).Selected = True
SendMessage ListView1.hwnd, &H1000 + 20, 0&, ByVal CLng(-ListView1.ListItems.Count * 20)
SendMessage ListView1.hwnd, &H1000 + 20, 0&, ByVal CLng(Val(List1.Text) * 14 - 14)
« última modificación: Marzo 31, 2010, 07:48:35 pm por xmbeat »
El hombre encuentra a Dios detrás de cada puerta que la ciencia logra abrir. -Einstein

LeandroA

  • Administrador
  • Petabyte
  • *****
  • Mensajes: 1128
  • Reputación: +151/-8
    • Ver Perfil
Re:SendMessage (Scroll a un ListView)
« Respuesta #1 en: Abril 01, 2010, 12:40:13 pm »
Hola podes utilizar la propiedad  EnsureVisible del ListView para mostrar el item seleccionado.

Código: [Seleccionar]
        ListView1.ListItems(Val(List1.Text)).Selected = True
        ListView1.ListItems.Item(Val(List1.Text)).EnsureVisible

Saludos.

xmbeat

  • Kilobyte
  • **
  • Mensajes: 84
  • Reputación: +3/-1
  • la vida no tiene sentido sin Dios
    • Ver Perfil
Re:SendMessage (Scroll a un ListView)
« Respuesta #2 en: Abril 01, 2010, 04:33:57 pm »
ok gracias, es que casi no uso este tipo de controles
El hombre encuentra a Dios detrás de cada puerta que la ciencia logra abrir. -Einstein