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

Sacar datos de un ListView

Estas en el tema de Sacar datos de un ListView en el foro de Visual Basic clásico en Foros del Web. Hola buenas tardes, tengo un caso que no he podido hacer, por favor necesito un poco de ayuda... Tengo un listview (al cual nombre ListData) ...
  #1 (permalink)  
Antiguo 07/04/2009, 13:07
 
Fecha de Ingreso: abril-2009
Ubicación: Venezuela
Mensajes: 1
Antigüedad: 15 años
Puntos: 0
Sacar datos de un ListView

Hola buenas tardes, tengo un caso que no he podido hacer, por favor necesito un poco de ayuda...

Tengo un listview (al cual nombre ListData) cargado con informacion de una tabla (de access) el cual cargue de la siguiente manera:

Sub List_Data()
'Crea la conexion a la BDD de donde se va a extraer la informacion a mostrar en el List
rs.Open "select ID,TAREA,DESCRIPCION,DIASAPROX,FECHAING,STATUS from PLANTRABAJO", cn, adOpenStatic, adLockOptimistic
ListData.ListItems.Add
'Aqui hace el Recordset de la tabla en los registros
While Not rs.EOF
Set Item = ListData.ListItems.Add(, , rs.Fields("ID"))
Item.SubItems(1) = rs.Fields("TAREA")
Item.SubItems(2) = rs.Fields("DESCRIPCION")
Item.SubItems(3) = rs.Fields("DIASAPROX")
Item.SubItems(4) = rs.Fields("FECHAING")
Item.SubItems(5) = rs.Fields("STATUS")
rs.MoveNext
Wend

rs.Close

End Sub

Lo que necesito es que al darle doble click a algun registro / fila seleccionada (que puede ser fila 1 o fila 2, etc., etc.)
pues me traiga en variables todos los valores de sus deferentes campos (ID, TAREA, DESCRIPCION, DIASAPROX, FECHAING, STATUS)
para poder asignarlos despues a un formulario y asi poder editar su contenido.

Agradecido de antemano por la ayuda recibida!
  #2 (permalink)  
Antiguo 07/04/2009, 13:43
Avatar de Coby  
Fecha de Ingreso: noviembre-2008
Ubicación: Jalisco
Mensajes: 20
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Sacar datos de un ListView

Te ayudaria mucho el SelectItem para saber el ITEM que tengas seleccionado, tambien agrega a tu list un evento click con ese te posicionaras en el registro que quieres obtener, y ahi mismo en el evento pones las variables con el subItems que quieras obtener a cada una de las mismas, espero te pueda servir.

Si quieres probar como va puedes imprimir algo sencillo como por ejemplo

Private Sub ListData_ItemClick.........
msgbox Item.Text

COn esto ves que tienes seleccionado y con Item.subItems(!) puedes sacar las subcadenas espero te sirva saludillos
  #3 (permalink)  
Antiguo 07/01/2010, 15:08
 
Fecha de Ingreso: septiembre-2007
Mensajes: 54
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Sacar datos de un ListView

'Codigo en un boton1

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Try
Dim Item As New ListViewItem
Dim columna1 As String
Dim columna2 As String
Dim columna3 As String
Dim columna4 As String
Dim columna5 As String

For i As Integer = 0 To ListView.Items.Count - 1 Step 1
columna1 = ListView.Items.Item(i).SubItems(0).Text
columna2 = ListView.Items.Item(i).SubItems(1).Text
columna3 = ListView.Items.Item(i).SubItems(2).Text
columna4 = ListView.Items.Item(i).SubItems(3).Text
columna5 = ListView.Items.Item(i).SubItems(4).Text
Next i

Catch ex As Exception

End Try
End Sub
'---------fin ---------------

leer listview bv.net 2005
al final recorre por fila y leo las columnas


saludos
[email protected]



Última edición por zeroyevi; 08/01/2010 a las 10:08 Razón: reparacion sintacsis
  #4 (permalink)  
Antiguo 08/01/2010, 04:09
 
Fecha de Ingreso: junio-2008
Ubicación: Punta Alta, Argentina
Mensajes: 82
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: Sacar datos de un ListView

Ejemplo que uso y funciona. Seleccionas al que queres y tambien se pone en negrita la fila seleccionada.

Private Sub ListView1_ItemClick(ByVal Item As MSComctlLib.ListItem)
Dim g As Variant, i As Integer, l As Integer, j As Integer
'#### toma de datos en una variable y lo podes usar donde quieras
ilAño = Int(ListView1.ListItems(Item.Index).Text)
iMes_t = ListView1.ListItems(Item.Index).SubItems(1)
iSmecV = (ListView1.ListItems(Item.Index).SubItems(5))
g = Item.Index
'#############
With ListView1
'Saca la negrita al item previamnete Seleccionado
For l = 1 To .ListItems.Count '- 1
.ListItems(l).Bold = False
For j = 1 To .ColumnHeaders.Count - 1
.ListItems(l).ListSubItems(j).Bold = False
Next
Next
End With

With ListView1
'Poner en negrita item Seleccionado
.ListItems(g).Bold = True
For i = 1 To .ColumnHeaders.Count - 1
.ListItems(g).ListSubItems(i).Bold = True
Next i
End With
End Sub
  #5 (permalink)  
Antiguo 08/01/2010, 10:19
 
Fecha de Ingreso: septiembre-2007
Mensajes: 54
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Sacar datos de un ListView

la aplicacion para fesero eso es visual basic 6

la solucion que di es para vb.net 2005

despues uno puede colocar a continuacion del codigo


' erencia
Imports System.IO

'variables
Public SourceFile As String
Public DestinationFile As String





' este fracmento lo tengo entre
'columna5 = ListView.Items.Item(i).SubItems(4).Text
'----------------
SourceFile = "c:\archivo"&Trim(columna4)
DestinationFile=columna 5

System.IO.Directory.CreateDirectory("c:\archivo")
If System.IO.File.Exists(SourceFile) = True Then
System.IO.File.Copy(SourceFile, DestinationFile, True)
End If

'---------------
'Next i

espero que entiendan saludos
[email protected]

Última edición por zeroyevi; 08/01/2010 a las 10:20 Razón: ser mas entendible
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 09:03.