Die innere Schleife kann ich ja mit "break" beenden. Aber wie beende ich die äußere Schleife auch noch in der if-Bedingung? Muss ich dann zweimal "break" setzen?
pro Schleife ist ein break notwendig!
Beispiel:
Delphi-Quellcode:
var
bfound: Boolean;
{...}
bfound := false;
//Alle Kästchen nach der Nummer durchsuchen
for i := 0 to SGridKreuzwort.ColCount - 1 do
begin
for j := 0 to SGridKreuzwort.RowCount - 1 do
if SGridKreuzwort.Cells[i,j] = FrageNr then
begin
SGridKreuzwort.OnSelectCell := nil; //Verhindern, dass OnSelectCell sofort ausgeführt wird
SGridKreuzwort.Col := (i + Horizontal);
SGridKreuzwort.OnSelectCell := @SGridKreuzwortSelectCell; //darf wieder ausgeführt werden
SGridKreuzwort.Row := (j + Vertikal);
bfound := true;
break;
end;
If bfound then
break;
end;
mfg
Helmi
>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<