Morgen!
Erstmal, vielleicht solltest du dir mal anschauen, wie man Komponenten dynamisch erzeugt. Das hört sich nach einem ganz schönen Gewurschtel bei dir an. Nicht böse gemeint
..
Zu deinem Problem: "Feld1" ist der Variablenname. Da kann man so nicht drauf zugreifen. Du könntest es so versuchen (ungetestet):
Delphi-Quellcode:
var
i: Integer;
begin
for i := 0 to Controls.Count - 1 do
if Controls[i] is TShape then
begin
TShape(Controls[i]).Brush.Color := clBlack;
end;
end;
Ansonsten könntest du in der Schleife auch bei jedem Control die Eigenschaft "Name" überprüfen, ob der mit "Feld" beginnt. Aber das ist nicht so schön finde ich.