Cita:
Empezado por DrakStorm
cuando aplico el procedimiento CLEAR en el GMMarker, lo que pasa es que el procedimiento limpia todos los marcadores que genere anteriormente, pero no borra la cola
|
GMMarker es una lista y cuando haces el
Clear si se borran todos los elementos de la lista y se libera la memoria de los elementos.
Si haces un
Count verás que la lista tiene 0 elementos.
Cita:
Empezado por DrakStorm
es decir cuando genero el primer marcador el ID de la cola es el 0 (cero) y el siguiente es el 1, hasta el momento todo perfecto, cuando aplico el CLEAR, pero el siguiente marcador que genero tiene como ID 2 y no 0 (cero)
|
Otra cosa diferente y que estás confundiendo es el
ID que se asigna a cada elemento, que no tiene porqué resetearse cuando haces el
Clear. Ese
ID es el que se va incrementando y aunque hagas el
Clear no se pone a cero (y no tiene porqué ponerse). Ese ID identifica a cada elemento, y no tiene resetearse.
Según lo que estés haciendo y para qué estés utilizando ese valor, puede usar de forma alternativa
GMMarker.Count.
Otra opción es
Marker.ZIndex, que parece que si que se comporta como deseas, de todas formas habrá que ver qué pasa con esta propiedad cuando borres elementos existentes, crees elementos nuevos,...
Una última opción para que el
ID se comporte como deseas (aunque no la veo la más adecuada) es
liberar la lista (GMMarker) y volver a crearla. De esa forma, el ID si se reinicia a cero.
Código Delphi
[-]
GMMarker1.Free;
GMMarker1 := TGMMarker.Create(Self);