Вот пример для Edit, но там точно также вродебы. Под рукой Delphi нету
Code
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
case key of
'0'..'9', '.', ',',chr(VK_BACK), '-': else key := #0;
end;
end;
Тут написано следующее: если нажата либо цифра, либо точка, кнопка Backspace или "-" то ничего не делаем, иначе то чего нажали не печатаем.