Necesito que expliques como utilizar el ListView. Es decir, como podre mostrar los datos de una tabla en él y si es posible mostrá un icono a la izquierda de cada registro. Creo que me he explicado bien. Gracias. Rubén.
Te has explicado bien. Mira te voy a pegar un código que hace lo que tu quieres y luego te explico >>>>>>>>>>>>>>>>>>>>>>>>>>>> Sub LlenaListview(Key As String) Dim itemX As ListItem Dim ImgGr Dim ImgPq StatusBar1.Panels(2).Text = "Contenido de: '" & TreeView1.Nodes(Key).Text & "'" ListView1.ListItems.Clear ListView1.Visible = True TDBGrid1.Visible = False Select Case Key Case "Raiz" Set itemX = ListView1.ListItems.Add(, "R0", "Listas", 1, 1) Set itemX = ListView1.ListItems.Add(, "R1", "Volumenes", 1, 1) Set itemX = ListView1.ListItems.Add(, "R2", "Autores", 1, 1) Set itemX = ListView1.ListItems.Add(, "R3", "Localizadores", 1, 1) Set itemX = ListView1.ListItems.Add(, "R4", "Valoraciones", 1, 1) Set itemX = ListView1.ListItems.Add(, "R5", "Formatos de Archivo", 1, 1) Case "R3" Set itemX = ListView1.ListItems.Add(, "R31", "Temas", 1, 1) Set itemX = ListView1.ListItems.Add(, "R32", "Lugares", 1, 1) Set itemX = ListView1.ListItems.Add(, "R33", "Personas", 1, 1) Case "R1" If Data2.Recordset.RecordCount > 0 Then Data2.Recordset.MoveFirst Do While Not Data2.Recordset.EOF Select Case Data2.Recordset.Fields("TipoUnidad") Case 2 ' Floppy ImgPq = 8: ImgGr = 4 Case 3 ' Disco duro ImgPq = 11: ImgGr = 5 Case 4 ' Disco de red ImgPq = 10: ImgGr = 6 Case 5 ' CDRom ImgPq = 9: ImgGr = 7 Case 6 ' Ramdisk ImgPq = 11: ImgGr = 8 End Select Set itemX = ListView1.ListItems.Add(, Data2.Recordset.Fields("Volumen"), Data2.Recordset.Fields("Volumen"), ImgGr, ImgPq) Data2.Recordset.MoveNext Loop End If Case Else End Select FrmMain.Habilita ("V") Foco = "L" End Sub >>>>>>>>>>>>>>>>>>>>>>>>>>>>> En esta rutina, se está llenando un Listview de varias formas, en función del parámetro "Key" con que se llama a este procedimiento. Lo que tu me preguntas es el llenado a partir de una tabla: Tienes el ejemplo dentro de Case "R1" Aquí, hay un control DATA2 que está apuntado a una tabla que contiene datos de una biblioteca "medios" esto es tanto de Cd's como disquetes, como incluso discos duros, etc Se pretende que el listview presente cada uno de esos medios, pero utilizando un icono distinto para cada tipo de elemento. Existen dos controles Imagelist que contienen respectivamente los iconos para la imagen grande y para la imagen pequeña, Estos dos ImageList se han asignado al Listview en tiempo de diseño Al ejecutar, recorremos el recorset del Data2 mediante el bucle Do-Loop En cada iteración, en función del dato "TipoUnidad" de la tabla, seleccionamos la imagen apropiada de cada una de las dos listas (variables ImgPq y ImgGr) Luego ejecutamos el método ADD para añadir el elemento al listview, poniendo como clave y como texto el campo "Volumen" de la tabla, añadiendo las variables que definen las imágenes apropiadas