Ver Mensaje Individual
  #8  
Antiguo 19-02-2018
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - Espańa
Posts: 18.233
Reputación: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
En la primera carga el ID de cada marca coincide con su índice en la lista:
Lista:


Index=0 Marca.ID=0
Index=1 Marca.ID=1
Index=2 Marca.ID=2


(la primera vez, el ID de cada marca -segunda columna- coincide con el INDEX de la lista, por eso no tienes problemas en acceder)

Después de hacer el clear, Los índices de la vuelven a comenzar por 0, mientras que el ID de las marcas sigue la progresión anterior. La lista después de hacer el Clear y crear nuevas marcas queda así:


Index=0 Marca.ID=3
Index=1 Marca.ID=4
Index=2 Marca.ID=5


Por eso, cuando intentas acceder a los elementos de la lista así (utilizando el ID):

Código Delphi [-]
  ...
  GMMark2.items[linkedcomponent.id].title
  ...

Utilizando, por ejemplo la marca con ID=4, te da un "out of rande", porque el íncide de la lista=4 no existe.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita