Vielleicht hilft es schon, wenn du die Form nach dem Löschen neu zeichnen lässt.
Delphi-Quellcode:
begin
for loop1:=0 to ((n2*d2)-1) do Feld[loop1].Free;
Application.ProcessMessages;
{Felder erstellen}
for loop1:=0 to (d1-1) do {y}
for loop2:=0 to (n1-1) do {x}
// ...
Grüße vom marabu