Noch eine kleine Frage habe ich zum Compilerhinweis besser charlnset zu verwenden bei der Abfrage der Editfelder (Key in...)
Und wie wäre die Frage?
CharInSet solltest du bei neueren Delphi Versionen verwenden. Müsste dann so aussehen:
if not CharInSet(Key, ['0'..'9']) then