IMHO war dein Prob folgendes:
- du hast n zweiten Timer und n zweites Image erstellt und den Pointer nur umgestellt. Beide Timer wollen jetzt das Bild verschieben, auf das der Pointer NewImage zeigt. Und das is eben das neue...
Und bitte nicht vergessen alles wieder freizugeben... Also entweder Owner/Parent setzen oder manuell Free; benutzen...
Ansonsten nimm am besten, so, wie schon vorgeschlagen, n Array(oder ne List, was auch nix anderes, als n gekapselter array is).
mfg
Christian