Yo creo que deberías poner todo en el evento OnChange.
Código Delphi
[-]procedure TForm1.Edit1(Sender: TObject);
var
cantidad : integer;
begin
if (pos('*',Edit1.Text) > 0) then
begin
cantidad := StrToIntDef(copy(Edit1.Text,1,Length(Edit1.Text)-1))
Edti1.Clear;
end;
end;