Цитата:
Сообщение от Maks19
Но функцию можно прописать один раз, а обработчик keypress надо для каждого edita.
|
И в чем проблема? Сделать еще одну маленькую проверку и закастить Sender к TEdit?
Код:
procedure TForm1.Edit1KeyPress(Sender : Tobject; var Key : Char);
var
Edit : TEdit;
begin
If Not (Sender Is TEdit) Then Exit;
Edit := Sender As TEdit;
If Not (Key In ['0'..'9','.',#8,#13,'-'])
Then Key := #0
Else
Begin
If (Key = '.') And (Pos('.',Edit.Text) > 0) Then Key := #0;
If (Key = '-') And (Pos('-',Edit.Text) > 0) Then Key := #0;
If (Key = '-') And (Edit.SelStart <> 1) Then Key := #0;
End;
end;
И назначай этот же обработчик всем Edit'ам...