FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
#1
|
||||
|
||||
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):
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. |
#2
|
|||
|
|||
realice una prueba de la siguiente manera
showmessage (GMMark2.items[linkedcomponent.id].title) la primera carga suponiendo que tengo solo una marca linkedcomponent.id tiene valor 0 y me trae el titilo del marcador correctamente. despues de aplicar el clear hago esto showmessage (GMMark2.items[linkedcomponent.id].title) y el linkedcomponent.id tiene valor 1 y el titulo del marcador da error. Despues de eso puse este mensaje y me mostró el titulo correctamente showmessage (GMMark2.items[0].title) En resumen cuando hago el clear me borra los marcadores y les genera un nuevo id a cada uno es decir si tengo 4 marcadores los genera desde el 0 al 3 pero el linkedcomponent.id no se resetea y cuando hago el clear en lugar de que el id del marcador valla del 0 al 3 va del 4 al 7. hay alguna manera de resetear eso? por la verdad ya estoy perdido. |
#3
|
|||
|
|||
Cita:
Ahora hay alguna manera para que el id de la marca coincida con el index? |
#4
|
|||
|
|||
Muchas gracias por tu ayuda lo solucione de la siguiente manera
Lo que hago es contar los marcadores que se generan y luego se los resto al id del marcador solo después de la primera carga. Se que para programadores mas expertos esto es un aborto de la naturaleza pero es lo único que se me ocurrió a mi, si tienes una solución mucho mas optima te lo agradecería mucho. Desde ya muchas gracias por toda tu ayuda estaba muy trabado con ese tema. |
#5
|
||||
|
||||
En el mensaje anterior te comenté algunas opciones.
La primera a probar sería utilizando la popiedad ZIndex de cada marca en lugar del ID. Parece que ese índice sí se resetea al hacer el Clear.
La segunda (y ahora me acabo de dar cuenta) es utilizar d9irectamente la propiedad de la marca, en lugar de buscar en la lista el título, ya que también la tiene. Es decir, utilizar esto para acceder al título: Y en todo caso, comprobar antes que linkedcomponent es un TMarker. La tercera, que también te he comentado, es usar una función para buscar el título que esperas sin usar el ID.
En este caso usarías algo así:
Más o menos son las que se me ocurren.
__________________
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. |
#6
|
|||
|
|||
Cita:
Paso a comentar los resultados de las soluciones que me aportaste. Primera solución: tira error (TLinkedComponent does not contain a member name ZIndex). Segunda solución: esta funciona perfecto y creo que para mi caso es la mas practica. Tercera solución: funciona perfecto pero creo que no es la mas acorde para mi caso en particular. Bueno espero que este post ayude a alguien mas también, y desde ya mas que agradecido por todas tus respuestas y el tiempo que le dedicaste a mi tema, MUCHAS PERO MUCHAS Gracias Neftali [Germán.Estévez] sos un crack. |
#7
|
|||
|
|||
Corrijo ZIndex no funciona con GMMarker pero si funciona perfecto con TMarker.
|
#8
|
||||
|
||||
Cita:
No lo había leído antes de escribir el último mensaje.
__________________
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. |
#9
|
||||
|
||||
Cita:
Aunque si la segunda te funciona, coincido en que parece la más adecuada y directa.
__________________
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. |
|
|
|