Как сделать, чтобы TEdit воспринимал одни цифры и DecimalSeparator
  
 | 
Сообщение в newsgroups: 
Вопрос: 
- Что такое RTFM? 
Ответ: 
- RTFM
 |  
  
 
type
  TNumEdit = class(TEdit)
    procedure CreateParams(var Params: TCreateParams); override;
    procedure KeyPress(var Key: Char); override;
end;
procedure register;
implementation
procedure register;
begin
  RegisterComponents('Standard', [TNumEdit]);
end;
procedure TNumEdit.CreateParams(var Params: TCreateParams);
begin
  inherited CreateParams(Params);
  Params.Style := Params.Style or ES_MULTILINE or ES_RIGHT;
end;
procedure TNumEdit.KeyPress(var Key: Char);
begin
  case key of
    '0'..'9': ; // цифры
    #8: ; // забой
    '.', ',':
      if Pos(DecimalSeparator, Text) = 0 then
        Key := DecimalSeparator
      else
        Key := #0; // десятичный разделитель
    else
      key := #0;
  end; // case
end;
end.
 |  
  
           |