You can use a mask edit component, but personally I found it has to many restrictions.
What I generally do is OnChange event convert the text to a
number, and generating some messages;
procedure Form.Edit1Change(Sender: TObject);
begin
val(edit11.text,dip,code); //convert to number
if code = 0 then
begin
Do_Some_Stuff;
end
else
begin
Vol1.Caption := '-----';
warning.caption := 'invalid input';
illegal_operations;
end;
There are other ways, but if your input must be in a specified range, you have to test it before further processing.
Regards
S. van Els
SAvanEls@cq-link.sr