Autor
|
Tema: Duplicar un item en un listview (Leído 3,712 veces)
|
Snort
Desconectado
Mensajes: 338
|
Vereis, eske stoi haciendo un juegecillo, y le estoi poniendo una tabla de maximas puntuaciones, la tabla (listview) tiene 43columnas, por orden son nombre, tiempo1, tiempo 2, y se guia por la 1º, nombre. El codigo es este: MsgBox "Has conseguido un nuevo récord.", vbInformation, "Enhorabuena!!!" Dim X As ListItem Set X = Form2.ListView1.ListItems.Add(, , "Pedro") ' Estas dos lineas solo son para añadir datos a la variable tempo, no tienen nada qe ver If min >= 1 Then Tempo = min & " min, " If sec >= 1 Or dec >= 1 Then Tempo = Tempo & sec & "," & dec & " seg." ' X.SubItems(1) = Tempo X.SubItems(2) = TimSeg End If Bueno, pues cuando consigues una maxima puntuacion te la pone bien, pero a la segunda qe consigues te añade los datos de la columna de tiempo1 y tiempo 2, y el nombre (Pedro) qeda intacto. Alguien sabe como duplicar el item para qe vaya creando mas items iguales y no sobreescriba los existentes?
|
|
|
En línea
|
|
|
|
Hans el Topo
Desconectado
Mensajes: 1.754
"Estoy cansado de no hacer nada"
|
nose si te entendi, MsgBox "Has conseguido un nuevo récord.", vbInformation, "Enhorabuena!!!" Dim X As new form2.Listview1.lisitems
' Estas dos lineas solo son para añadir datos a la variable tempo, no tienen nada que ver If min >= 1 Then Tempo = min & " min, " If sec >= 1 Or dec >= 1 Then Tempo = Tempo & sec & "," & dec & " seg." ' X.SubItems(0) = "Pepe" X.SubItems(1) = Tempo X.SubItems(2) = TimSeg
form.listview1.listitems.add X End If
|
|
« Última modificación: 23 Diciembre 2006, 14:12 pm por Hans el Topo »
|
En línea
|
|
|
|
CeLaYa
Desconectado
Mensajes: 543
|
podrías explicarlo de otra manera no entiendo muy bien, con ese código debería estar agregandote un item cadavez que lo ejecutes, checa si no tienes un ListView.ListItems.Clear o algo así
|
|
|
En línea
|
"La soledad es el elemento de los grandes talentos". Cristina de Suecia (1626-1689) Reina de Suecia.
|
|
|
Hans el Topo
Desconectado
Mensajes: 1.754
"Estoy cansado de no hacer nada"
|
aligual lo que hace es machacar todo el rato el mismo objeto y por eso no se lo agrega
|
|
|
En línea
|
|
|
|
~~
|
Pueva a simplemente a agregar un objeto y luego lo ordena por el tiempo (el de menor tiempo arriba) y ya esta Mira a ver y nos cuentas 1S4ludo
|
|
|
En línea
|
|
|
|
Snort
Desconectado
Mensajes: 338
|
aligual lo que hace es machacar todo el rato el mismo objeto y por eso no se lo agrega
Efectivamente, eso es lo qe hace, no me he explicao muy bien Pueva a simplemente a agregar un objeto y luego lo ordena por el tiempo (el de menor tiempo arriba) y ya esta Mira a ver y nos cuentas 1S4ludo lo tengo en sorted = true y sortkey = 2, es decir, siempre me los ordena por tiempo 2 mayor, pero al machacarlo encima, el nombre se duplica, y el tiempo 1 y tiempo2 se suman a los anteriores (suma de frase, [frase+frase] no suma numerica)
|
|
|
En línea
|
|
|
|
Hans el Topo
Desconectado
Mensajes: 1.754
"Estoy cansado de no hacer nada"
|
ahora no me acuerdo como se hacia para agregar objetos y que no se destruyesen ni osbreescribiesen y mira que lo tuve que hacer con panels xD lo que se me ocurre ahora es que crees un array de objetos 'esto por el general dim x(42) as new form2.listview1.lisitems dim indice as integer
'esto en tu procedimiento on error goto actimel MsgBox "Has conseguido un nuevo récord.", vbInformation, "Enhorabuena!!!"
' Estas dos lineas solo son para añadir datos a la variable tempo, no tienen nada que ver If min >= 1 Then Tempo = min & " min, " If sec >= 1 Or dec >= 1 Then Tempo = Tempo & sec & "," & dec & " seg." ' X(indice).SubItems(0) = "Pepe" X(indice).SubItems(1) = Tempo X(indice).SubItems(2) = TimSeg
form.listview1.listitems.add X(indice)
indice=indice+1
End If exit sub actimel: msgbox "Existen 43 objetos puntuaciones en la clasificacion..."
|
|
|
En línea
|
|
|
|
CeLaYa
Desconectado
Mensajes: 543
|
aver vamos a ver si entendí. Lo que quieres hacer es que cuando agregas un Item te muestre: Nombre Tiempo1 Tiempo2 Pedro 1 1 y si vas agregando más items ponga: Nombre Tiempo1 Tiempo2 Pedro 1 1 Pedro 2 2 bueno si el problema es el objeto "x" pues quitalo, y pones tú código así: Listview1.ListItems.add ,,"Pedro" Listview1.ListItems.subitems(1) = tiempo1 Listview1.ListItems.subitems(2) = tiempo2
|
|
|
En línea
|
"La soledad es el elemento de los grandes talentos". Cristina de Suecia (1626-1689) Reina de Suecia.
|
|
|
Snort
Desconectado
Mensajes: 338
|
Gracias a todos por las respuestas ya lo he solucionado, habian algunos errores pekeñitos por ahi... xD Saludos
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Duplicar licencia
Software
|
feraku
|
0
|
1,345
|
21 Abril 2013, 18:28 pm
por feraku
|
|
|
Identificador para item de listview
ASM
|
.:UND3R:.
|
4
|
3,837
|
18 Mayo 2013, 00:55 am
por .:UND3R:.
|
|
|
Cómo darle un identificador a un item (listview)
Programación General
|
.:UND3R:.
|
1
|
2,250
|
18 Mayo 2013, 23:42 pm
por XresH
|
|
|
Buscar en un listview y resaltar item
.NET (C#, VB.NET, ASP)
|
nolasco281
|
7
|
12,352
|
22 Mayo 2015, 08:06 am
por nolasco281
|
|
|
Seleccionar un Item de un Listview y darle click derecho
Programación Visual Basic
|
jack06
|
2
|
3,922
|
12 Noviembre 2017, 19:45 pm
por okik
|
|