СообЧа > База Знаний > Программирование > Delphi

Вопрос

Как в окно Edit'а не допустить ввод букв? Т.е. игнорировать нажатие буквенных клавиш и реагировать только на цифровые.

Ответ

Для того, чтобы не допустить ввод букв в Edit, можно в событии OnKeyPress прописать примерно следующее:

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
Case key of
'0'..'9': ;
chr(8) : ;
else key:=chr(0);
end;
end;

То есть, если производится ввод цифр (0-9), то они вводятся, также и клавиша BackSpace (chr(8)). Иначе же ничего не вводим (chr(0)). Можно вывести сообщение.

Sergey K.

procedure TInputForm.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not(Key in ['0'..'9',#8]) then Key := #0;
end;
mr_eduard



Copyright © 2000-2004 Сообщество Чайников
Контактная информация