Zitat von
SirThornberry:
warum verwendest du globale Variablen wenn du sie in der Klasse verwendest?
Andere Knöpfe - Andere Prozeduren... Einige Sachen meines Programms laufen nicht immer in Form1 ab
Zitat von
SirThornberry:
wie sieht ResetPossible() aus?
Vorhin:
Delphi-Quellcode:
procedure TForm1.ResetPossible();
var a, b, c: Integer;
begin
for a := 1 to 9 do
for b := 1 to 9 do
for c := 1 to 9 do
Possible[a-1, b-1, c] := True;
end;
Später:
Delphi-Quellcode:
procedure TForm1.ResetPossible();
var a, b, c: Integer;
begin
for a := 1 to 9 do
for b := 1 to 9 do
for c := 1 to 9 do
Possible[a, b, c] := True;
end;
Das Problem war, dass der StringGrid von 0 bis 8 und nicht von 1 bis 9 die Spalten und Zeilen abzählt... Ich hatte eigentlich Possible als Array[0..8, 0..8, 1..9] initialisiert, aber das war mir zu unübersichtlich. Als ich auf [0..9, 0..9, 0..9] umgestiegen bin, habe ich wohl nicht bemerkt, dass 'Possible[a-1, b-1, c] := True;' in der Prozedur 'ResetPossible()' nicht mehr immer gültig ist.
Ich gestehe, dass das ein blöder Fehler ist und dass ich ihn eigentlich hätte entdecken können... Aber jetzt ist es repariert.
Zitat von
xX0815Xx:
Das mit der Bereichsprüfung habe ich noch nicht gewusst
Ich auch nicht... Es hilft aber sehr. Danke, Muetze1