"Not enough actual parameters" oznacza, że funkcja czy procedura ma więcej parametrów niż podałeś w kodzie; Konstruktor klasy TImage potrzebuje jako argumentu kontrolki rodzicielskiej;
@TomRiddle podał jako argument Self, które w kodzie modułu oznacza nazwę formularza; Równie dobrze możesz tam podać nazwę formularza na sztywno:
Kopiuj
PicturesArr[High(PicturesArr)] := TImage.Create(MainForm);
Pod warunkiem, że MainForm to nazwa formularza;
TomRiddle napisał(a)
Możesz ją dynamicznie tworzyć.
Można owszem, ale nie w każdym przypadku należy tak zrobić; Jeżeli będzie miał np. planszę o stałych rozmiarach, to nie ma potrzeby tworzenia macierzy dynamicznej, wystarczy statyczna; Ale w każdym innym przypadku warto ich używać;
Musisz pamiętać, że jak jakiś klocek usuwasz (wizualnie), to musisz także usunąć go z pamięci; Jeżeli masz statyczną macierz to musisz tylko zwolnić pamięć metodą Free, ale jak masz dynamiczną, to nie dość, że trzeba zwolnić pamięć to jeszcze usunąć pole w macierzy po tym klocku (a usuwanie realizuje się przesuwając każdy kolejny element w macierzy o jeden indeks w dół, po czym zmniejsza się długość macierzy o jeden); Możesz mieć z tym kłopot, ale tak jak pisałem wcześniej - jeżeli znasz rozmiar planszy i zawsze on będzie taki sam - wykorzystaj macierz statyczną (o stałym rozmiarze);
Więcej nie ma co pisać bo nie wiem dokładnie co robisz;