Bitte jetzt nicht falsch verstehen, aber ich kann keinerlei Struktur in deinem Sourcecode erkennen.
Ein Grundprinzip ist, dass du ein virtuelles Spielfeld benötigst, dass dann angezeigt (Visualisierung) wird .
Bei einem 3x3 Sudoku *) würden man ein Array der Grösse 9 * 9 deklarieren:
Delphi-Quellcode:
type
TSudokuValue = (0..9); // 0 bedeutet Feld ist leer
TSudokuField = array[1..9, 1..9] of TSudokuValue;
Von diesem Array wird man eines im Abschnitt private des Formulars ablegen.
Delphi-Quellcode:
private
sudoku : TSudokuField;
Dieses Array wird dann auf ein Stringgrid der Grösse 9 * 9 abgebildet.
*) bitte erst mal kleine Brötchen backen