Dein Code mag gedanklich ja richtig sein, aber an sich habhabst du das eher falsch
Objekte von TBitmap solltest du in eine Liste (TObjectList oder TList) speichern, nicht in ein Array. Es klappt zwar auch, hat aber seine Vor- und Nachteile (-> Forumsuche).
Nun zu deinem Code:
Delphi-Quellcode:
var
imageList : TObjectList;
imgRef : TImage;
begin
imageList := TObjectList.Create();
// Bild erzeugen und Bild laden
imgRef := TImage.Create();
imgRef.LoadFromFile(...);
// Bild in Liste übernehmen
imageList.Add(imgRef);
// evtl. weitere Bilder übernehmen
imgRef := TImage.Create(); // pro zu ladendem Bild ein neues Objekt erzeugen
{ ... }
// ein bestimmtes Bild anzeigen
Image1.Picture.Bitmap.Assign( TImage(imageList[0]) ); // Zeigt das erste Element mit dem Index 0 an
end;
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)