Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Seleccionar todos los elementos de un ListBox

Estas en el tema de Seleccionar todos los elementos de un ListBox en el foro de Visual Basic clásico en Foros del Web. Hola, Tengo un ListBox cuyo número de elementos no conozco porque se añaden en tiempo de ejecución, y necesito que al darle a un botón ...
  #1 (permalink)  
Antiguo 30/11/2009, 06:09
KazerPowa
Invitado
 
Mensajes: n/a
Puntos:
Seleccionar todos los elementos de un ListBox

Hola,

Tengo un ListBox cuyo número de elementos no conozco porque se añaden en tiempo de ejecución, y necesito que al darle a un botón (Botón Seleccionar todo) se seleccionen todos los elementos que haya en dicho ListBox. De momento he conseguido seleccionar un elemento, pero no sé cómo seleccionar todos los que tenga.

El ListBox ya está configurado para seleccionar varios elementos, pero el problema es cómo indicar que seleccione todo.

Ejemplo para seleccionar un elemento:
ListBox1.SelectedIndex (1)
...bueno algo así era, no tengo el código delante.

Como selecciono todo?

Gracias
  #2 (permalink)  
Antiguo 30/11/2009, 06:11
KazerPowa
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Seleccionar todos los elementos de un ListBox

Bueno ya está, por si a alguien le interesa....

Insertar un ListBox y dos Botón en un nuevo proyecto. Poner la propiedad MultiSelect del ListBox
a "1 - Simple" y escriba el siguiente código:

Private Declare Function SendMessageLong Lib "user32" Alias
"SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long,
ByVal wParam As Long, ByVal lParam As Long) As Long

Private Sub Form_Load()
List1.AddItem "Texto 1"
List1.AddItem "Texto 2"
List1.AddItem "Texto 3"
List1.AddItem "Texto 4"
List1.AddItem "Texto 5"
List1.AddItem "Texto 6"
List1.AddItem "Texto 7"
End Sub

Private Sub Command1_Click()
'Seleccion de todo el contenido
Dim Resp As Long
Resp = SendMessageLong(List1.hwnd, &H185&, True, -1)
End Sub

Private Sub Command2_Click()
'Eliminacion de todos los elementos seleccionados
Dim Resp As Long
Resp = SendMessageLong(List1.hwnd, &H185&, False, -1)
End Sub

Fuente: http://www.elhacker.net/trucosvisual.htm
  #3 (permalink)  
Antiguo 30/11/2009, 14:17
Avatar de pkj
pkj
 
Fecha de Ingreso: julio-2006
Ubicación: Órbita sincrónica
Mensajes: 899
Antigüedad: 17 años, 9 meses
Puntos: 29
Respuesta: Seleccionar todos los elementos de un ListBox

SendMessage es muy versatil, aunque para esto no hacia falta:

Código :
Ver original
  1. Dim F As Long
  2. For F=0 To List1.ListCount -1
  3.   List1.Selecter(F) = True
  4. Next F

Saludos
__________________
No hay preguntas tontas, solo gente estup..., ¡No!, ¿como era? No hay gente que pregunte a tontos... ¡Nooo!... ¡Vaya cabeza!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:58.