FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
sumando valores de un listview
Hola, buenos dias a todos
Estoy intentando sumar el contenido de una columna dada de un listview, pero me tira el siguiente error: Cita:
Luego de probar varias cosas, aquí en el foro encontre este hilo supongo que no es algo muy complicado, pero no sé por qué a mi me da error. ¿alguna sugerencia? Por cierto, la variable total está definida como "extended" Gracias y saludos.
__________________
La juventud pasa, la inmadurez se supera, la ignorancia se cura con la educación, y la embriaguez con la sobriedad, pero la estupidez dura para siempre. Aristofanes. |
#2
|
||||
|
||||
Hola danielmj.
Cita:
Saludos
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#3
|
||||
|
||||
Hola ecfisa, es cierto, después de enviar el post me di cuenta y lo cambié pero ahora después de cambiarlo me encuentro con esto:
El código lo cambié a esto (y la variable total la cambie de extended a real):
Y si en cambio la variable la sigo definiendo como "extended", me tira este otro error: Si en ese dialogo pulso sobre "break" me marca la siguiente linea: Así que he pasado de un error por descuido a otro sobre el que no tengo ni idea ni control (siendo honesto) y obviamente no sé muy bien como solucionarlo. Un saludo y gracias por tu tiempo.
__________________
La juventud pasa, la inmadurez se supera, la ignorancia se cura con la educación, y la embriaguez con la sobriedad, pero la estupidez dura para siempre. Aristofanes. Última edición por danielmj fecha: 12-11-2014 a las 15:23:09. |
#4
|
||||
|
||||
Hola danielmj.
Revisa que exista el índice 9 (lista.Items[9].Caption). Saludos
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#5
|
||||
|
||||
Hola de nuevo ecfisa,
Mira la captura del listview con su distribución de columnas sería esta: El codigo es este:
Me estaba liando con el indice, no contaba con la columna 0 que no se ve por eso de tener el width a 0. En lugar de poner 10, usaba el indice 9. A parte de eso, lo unico que he cambiado es que esta parte del codigo ahora se inicia en el oncreate del formulario. He hecho estos cambios y ya no tira ningun error, eso si, sigue sin sumarme nada. Ahora me pondre con eso para que sume todas las cantidades. Gracias y un saludo.
__________________
La juventud pasa, la inmadurez se supera, la ignorancia se cura con la educación, y la embriaguez con la sobriedad, pero la estupidez dura para siempre. Aristofanes. |
#6
|
||||
|
||||
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal Última edición por Casimiro Notevi fecha: 12-11-2014 a las 20:20:44. |
#7
|
||||
|
||||
Hola casimiro, gracias pero me temo que no funciona. Practicamente he copiado y pegado tu código y no suma nada, lo unico que hace es meter en "label35.caption" el precio del ultimo articulo introducido, pero no suma este con los anteriores.
La columna de al lado de "precio" está vacia por que aún ando liado con ella para agregar elementos desde otro formulario. Como puedes ver en la captura, hace eso, mostrar el ultimo precio introducido pero no los suma. Saludos
__________________
La juventud pasa, la inmadurez se supera, la ignorancia se cura con la educación, y la embriaguez con la sobriedad, pero la estupidez dura para siempre. Aristofanes. |
#8
|
||||
|
||||
No entiendo el contexto, ¿puedes explicarlo y también poner el código que usas, y qué valores tiene esa lista y cómo y dónde lo asignas?
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#9
|
||||
|
||||
Hola,
mira el siguiente es el codigo del evento oncreate:
**Lo que está como comentario, son pruebas que he ido haciendo sin mayor importancia ** Por otra parte, el código que le manda el valor precio a la lista (TlistView) es este:
A su vez, Label17 parte del formulario 1 y almacena la suma de los precios segun los articulos seleccionados por el cliente. Al hacer clic sobre el boton2 se envia el valor de label17 del formulario 1 directamente a la columna de precios de la lista. Así cada vez que se agregan nuevos articulos, al final, en el oncreate del rForm (ver más arriba), debería sumar esa columna de precios, pero como has visto solo muestra el valor del ultimo elemento introducido en la lista. Espero haberme explicado mejor ahora. Otra cosa, lo del label17 del formulario 1 que va directamente a la lista del formulario rForm... etc sé que no es lo mas elegante ni lo mas eficiente, pero no conozco otra forma de hacerlo, quiero decir, sin saltar de un form a otro. Un saludo.
__________________
La juventud pasa, la inmadurez se supera, la ignorancia se cura con la educación, y la embriaguez con la sobriedad, pero la estupidez dura para siempre. Aristofanes. |
#10
|
||||
|
||||
Sigo sin poder sumar nada, y probando cosas, he situado un boton en el formulario y en su evento clic, el siguiente codigo:
Mi pregunta es ¿tal como está esa linea debería mostrar en el label36, el valor 5 de la columna 3 del listview? por que no entiendo muy bien, y esa linea da error cuando pulso el boton. La idea es saber si almacena o no valores en la etiqueta y de este modo ver si se suman valores de la lista o no. Gracias y un saludo.
__________________
La juventud pasa, la inmadurez se supera, la ignorancia se cura con la educación, y la embriaguez con la sobriedad, pero la estupidez dura para siempre. Aristofanes. |
#11
|
||||
|
||||
Hola de nuevo,
he cambiado el codigo a esto:
He intentado basarme en este código:
Que peternece a este post http://www.clubdelphi.com/foros/showthread.php?t=82673, ahí se usa un messagebox para mostrar el valor y yo uso una etiqueta, creo que es la unica diferencia, aun asi, no me funciona. Ni puedosumar los valores de una columna ni me muestra en el label el contenido de una celda de la lista. Ya estoy desesperao, incluso he cerrado delphi varias veces cabreao y al rato vuelvo a insistir en vano. En fin, saludos.
__________________
La juventud pasa, la inmadurez se supera, la ignorancia se cura con la educación, y la embriaguez con la sobriedad, pero la estupidez dura para siempre. Aristofanes. Última edición por danielmj fecha: 13-11-2014 a las 13:51:20. |
#12
|
||||
|
||||
Hola Daniel.
Cita:
Revisa el demo que te adjunto a ver si es lo que estás buscando. Saludos
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#13
|
||||
|
||||
Pero, te estás liando tú solo. Divide y vencerás.
Antes pregunté y no has contestado: ¿dónde está el código que da los valores a la lista?, ¿qué valore son?
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#14
|
||||
|
||||
Hola, Casimiro y ecfisa,
Al primero (casimiro), el código que envia los datos a la lista es este: Form1. button2.click.... //envia datos al tercer formulario (rForm), que contiene la lista.
Segundo formulario (pDatos)
Por ultimo el rForm que contiene la lista:
De este último trozo, label35 no muestra la suma de nada, tan solo el precio del ultimo articulo introducido en la lista. Y la linea que hace mencion a "total2",da error de "access violation" Ya he probado con todos los indices por si meto alguno que no exista, pero no hay forma. Espero no haberme liado explicando todo. Hola ecfisa, ahora me pongo con tu demo, a ver si consigo algo, estuve escribiendo este post antes de mirarlo, en cuanto sepa algo te digo. Gracias a los dos, con lo que vaya surgiendo os comento, y si empiezo a rallar la pesadez decirmelo eh. Un saludo.
__________________
La juventud pasa, la inmadurez se supera, la ignorancia se cura con la educación, y la embriaguez con la sobriedad, pero la estupidez dura para siempre. Aristofanes. Última edición por danielmj fecha: 13-11-2014 a las 16:41:34. |
#15
|
||||
|
||||
Hola ecfisa,
He mirado tu demo, la he puesto a andar y tira bien, va sin problemas. Ahora copio y pego tu codigo (el del boton) + la constante maxitem de la seccion implementation, lo acomodo a mi programa, le cambio los nombres de los controles para que no de error y esas cosas y lo que pasa es esto https://www.youtube.com/watch?v=IFnz...ature=youtu.be Si, he llegado a un punto, que ya no sé que hacer para que funcione el asunto, y he optado por hacer una captura de video y que veais los pasos que sigo hasta que salta la liebre (el error). Saludos y gracias. Tu código modificado: ... implementation
__________________
La juventud pasa, la inmadurez se supera, la ignorancia se cura con la educación, y la embriaguez con la sobriedad, pero la estupidez dura para siempre. Aristofanes. Última edición por danielmj fecha: 13-11-2014 a las 17:30:25. |
#16
|
||||
|
||||
Hola Daniel.
Es que el índice debería ser O dicho de otro modo: Count - 1 - columna 0 (que no usas) , es decir que no sería 9 sino 8. Saludos
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#17
|
||||
|
||||
Hola ecfisa, he probado a poner ".columns.count -2" pero entonces pasa esto:
Asi que, sigo igual, sin poder sumar nada. Un saludo y gracias por tu tiempo.
__________________
La juventud pasa, la inmadurez se supera, la ignorancia se cura con la educación, y la embriaguez con la sobriedad, pero la estupidez dura para siempre. Aristofanes. |
#18
|
||||
|
||||
Hola Daniel.
Acabo de mirar el video, fijate que la constante MAXITEM es un valor arbitrario que usé solo para el ejemplo. En el video que mostras intenta recorrer diez items cuando sólo hay dos ingresados, deberías usar:
Saludos
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#19
|
||||
|
||||
No veo dónde está la complicación..., si en lugar de sumar EL CONTENIDO del TListView en ése momento, sumaras LOS DATOS QUE COMPONEN el TListView mientras lo llenas antes de mostrarlo...
Cuestión de pensar lateralmente para resolver un problema...
__________________
Felipe Eduardo Ortiz López. Delphi programmers does it recursively... "Un programador, es un creador de universos en donde sólo él es responsable. Universos de complejidad prácticamente ilimitada que se puede crear en forma de programas de ordenador." - Joseph Weizenbaum. Témele a los profetas... y a aquellos que están listos para morir por "la verdad", ya que como regla general hacen morir a muchos otros con ellos, frecuentemente antes que ellos, y a veces en lugar de ellos. — Umberto Eco |
#20
|
||||
|
||||
Hola ecfisa
muchas gracias!!!! por que no está aquí el icono ese de la cabeza dandose golpes con el pc, sino lo pondría. Por fin ha funcionado, solo he tenido que poner "-3" en el .columns.count para hacer referencia a la columna que guarda las cantidades. Debo reconocer, que estaba enfrascado en el "lista.items.count" y no le hacia caso al "columns.count" ese tambien ha sido un error por mi parte. Ahora tengo una pelea nueva con el boton "volver atras" que cuando me lleva de regreso al formulario anterior, limpia la lista y cuando regreso, solo tengo el ultimo elemento añadido, pero bueno eso no me preocupa, en comparacion es un mal menor, que espero resolver pronto. Muchas gracias otra vez, tanto a ti como a casimiro y a todos los que han prestado su ayuda. Un saludo.
__________________
La juventud pasa, la inmadurez se supera, la ignorancia se cura con la educación, y la embriaguez con la sobriedad, pero la estupidez dura para siempre. Aristofanes. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Error Sumando Columnas SQL | martini002 | Conexión con bases de datos | 44 | 25-08-2012 21:28:57 |
sumando dos float no pbtengo valor real | lmpadron | C++ Builder | 2 | 12-09-2011 22:33:03 |
Sumando columnas con Qreport ? | Coco_jac | Varios | 5 | 27-01-2006 15:57:56 |
error sumando campos | weke | SQL | 2 | 02-06-2004 15:52:33 |
Sumando columnas/Filas | StartKill | Firebird e Interbase | 5 | 27-05-2004 10:42:32 |
|