Недавно добавленные исходники

•  DeLiKaTeS Tetris (Тетрис)  4 159

•  TDictionary Custom Sort  6 224

•  Fast Watermark Sources  6 020

•  3D Designer  8 918

•  Sik Screen Capture  6 355

•  Patch Maker  6 773

•  Айболит (remote control)  6 755

•  ListBox Drag & Drop  5 630

•  Доска для игры Реверси  96 209

•  Графические эффекты  6 978

•  Рисование по маске  6 248

•  Перетаскивание изображений  5 148

•  Canvas Drawing  5 517

•  Рисование Луны  5 218

•  Поворот изображения  4 766

•  Рисование стержней  3 370

•  Paint on Shape  2 623

•  Генератор кроссвордов  3 513

•  Головоломка Paletto  2 804

•  Теорема Монжа об окружностях  3 615

•  Пазл Numbrix  2 366

•  Заборы и коммивояжеры  3 046

•  Игра HIP  2 002

•  Игра Go (Го)  1 927

•  Симулятор лифта  2 285

•  Программа укладки плитки  1 988

•  Генератор лабиринта  2 442

•  Проверка числового ввода  2 125

•  HEX View  2 460

•  Физический маятник  2 079

 
скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Delphi Sources

Как сделать, чтобы 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.





Похожие по теме исходники

Расширение компонента TEdit




Copyright © 2004-2025 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте