Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   TEdit Float (https://www.clubdelphi.com/foros/showthread.php?t=52468)

Temurdounojo 22-01-2008 11:10:37

TEdit Float
 
Pues tengo un TEdit, donde meten importes, tipo 1256,69 por ejemplo, el caso esque me estan metiendo 1256,69E para indicar que son euros, y no quiero que lo metan, y por mucho que lo digo lo siguen metiendo, el caso esque yo tengo la comprobación:

Código Delphi [-]
procedure TwPrincipal.PImporte_tarjExit(Sender: TObject);
begin
  try
    strtoFloat(trim(PImporte_tarj.text));
  except
    ShowMessage('Tiene que insertar un Importe (ejemplo 356,69)');
    PImporte_tarj.setfocus;
  end;
end;

y Me coje como si fuera un exponencial todos los numeros con E

ej:
59,7E
59,7E5
59,7E33

¿Como puedo hacer para que no lo hagan?

Se podría hacer con un onkeypress, pero ¿hay alguna forma mejor?

elcolo83 22-01-2008 11:55:57

Hola,
Lo que podrias hacer es que en el evento OnkeyPress de TEdit seria agregar algo asi

Código Delphi [-]
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if ord(Key)>31 then
  with TEdit(sender) do
    case key of
      '0'..'9': key:= key;
      ',': if pos(',',Text)>0 then Key:= #0;
      else key:= #0;
    end;
end;


Con eso solo podra ingresar numeron y una sola ',' (coma)

Temurdounojo 23-01-2008 11:54:52

Gracias, ha funcionado perfectamente.


La franja horaria es GMT +2. Ahora son las 01:54:11.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi