Hola gonza.
Te entiendo perfectamente.
Probá de hacer lo siguiente:
Código Delphi
[-]
procedure TForm1.DBEdit1Exit(Sender: TObject);
var
x: Currency;
begin
x:= StrToCurr(DBEdit1.Field.AsString);
x:= x + 1000;
ShowMessage(FloatToStr(x));
end;
Notarás que que si ingresaste por ejemplo: $ 1200,00 el mensaje dira: 2200, que en definitiva es la suma del valor que acabas de ingresar + 1000...
No podés trabajar con el valor Text como si fuese un string por que es un MaskedText.
Simplificando mucho, una cosa es lo que se muestra debido a la máscara($,.) y otra el manejo interno del valor numérico.
Espero me hayas entendido.
Saludos.
