Wenn es sowas wie TMaskEdit nicht gibt, würde ich bei einem Edit sowas in der Art machen:
Delphi-Quellcode:
// kann falsch benannt sein, bitte delphis vorschlag für KeyDown-Event annehmen (nur hier im editor gemacht)
procedure TFormular.Edit1KeyDown(Sender: TObject; var Key: Word; var KeyChar: Char; Shift: TShiftState);
begin
// nur nummern und trennzeichen akzeptieren
if not CharInSet(KeyChar, ['.', '0'..'9']) then
KeyChar := #0;
end;