Wie ich an dem Code sehe, durchläuft die funktion
alle Felder (bzw. Shapes) und setzt danach Result. Fakt ist jedoch, dass wenn z.B. im ersten Durchlauf Result = true ist, dann wird dass im zweiten Durchlauf wieder überschrieben, usw. . Die Funktion dürfte also
nur dann True ausgeben, wenn im letzten Durchlauf alle abgefragten Felder rot sind (d.h. die letzten vier Felder sind rot) und sonst nicht.
Das kann man aber ändern, indem man den Quelltext geringfügig ändert:
Delphi-Quellcode:
function TForm1.Spieler2Sieg: boolean;
var i: integer;
begin
Result:= False;
for i := 1 to 42 do
///weiter wie bisher ...
... and ((FindComponent('Shape'+IntToStr(i+3)) as TShape).Brush.Color = clRed)
then
Result := (true or Result);
end;
end;
MfG
Binärbaum