Цитата:
Сообщение от lmikle
Извращенцы. Микроскопом гвозди забивать не пробовали? Говорят, тоже хорошо вставляет, особенно когда осколки линз во все стороны летят...
Для данной задачи не нужно ничего, кроме ОДНОГО простого обработчика, присвоенного ВСЕМ едитам.
Код:
procedure TForm1.EditKeyPress(Sender : TObject; var Key : Char);
begin
if Not (Key In ['0'..'9','.',#8])
Then Key := #0
Else
If Key = '.' Then
If Pos('.',(Sender As TEdit).Text) > 0 Then Key := #0;
end;
И присвой этот обработчик всем едитам в OnKeyPress.
|
От тиражирования одного и того-же фрагмента кода я как раз и пытаюсь уйти , а ты мне предлагаешь те-же яйца только в профиль - "присвой этот обработчик всем едитам"
Твой код на первый взгляд оптимизирован лучше...
но во первых
знак разделения дробных чисел может быть не "." а "," - это зависит от настроек конкретной ОС, а для меня важно что-бы они совпадали;
во вторых защита от ввода не нужных символов в данном случае не самоцель.
Главное хотелось бы освоить работу с DLL...
С чего-то начинать нужно..