Foros Club Delphi

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

reina 09-11-2005 16:21:31

formato decimal
 
Hola bueno quisiera saber como hacer para que en un dbedit que se corresponde a un campo numerico..con decimales no me deje poner mas de un punto de separacion, he probado desde la tabala en agregar los campos, y en la propiedad del campo decimal poner el display format..y no me responde, me deja poner mas de un punto. Me pasa por alto la restriccion del formato que quiero que se ingrese. Quisiera saber cual es el problema o si estoy haciendo algo mal.
saludosss esperando sus respuestas

luisgutierrezb 09-11-2005 17:06:38

Tendrias que usar un componente externo (jedi, rx, etc, etc) o hacerlo mediante codigo

fidel 14-11-2005 21:12:43

Hola:

Por la fecha de este hilo quizás ya sea demasiado tarde pero ahí va:

Esto funciona para edit (excepto creo recordar, si se ecribe en el edit con "copiar".. "pegar")

En su evento OnKeyPress
Código Delphi [-]
procedure TFLibros.ESigna1EKeyPress(Sender: TObject; var Key: Char);
var
  i: integer;
begin
  //controlar entrada solo números y punto
  if ( StrScan('0123456789.'+chr(7)+chr(8), Key) = nil ) then  Key := #0;
  //controlar entrada un solo punto
  for i := 1 to length(ESigna1E.Text) do
    if ( copy(ESigna1E.Text,i,1) = '.' ) and not ( StrScan('.', Key) = nil ) then  Key := #0;
end;

Mira a ver si con DBEdit funciona algo parecido
Código Delphi [-]
procedure TFLibros.ESigna1EKeyPress(Sender: TObject; var Key: Char);
var
  i: integer;
begin
  //controlar entrada solo números y punto
  DBEEdit1.Field.ValidChars :=['0'..'9','.']
  //controlar entrada un solo punto
  for i := 1 to length(DBEEdit1.Text) do
    if ( copy(DBEEdit1.Text,i,1) = '.' ) and not ( StrScan('.', Key) = nil ) then  Key := #0;
end;

Un saludo.


La franja horaria es GMT +2. Ahora son las 16:43:21.

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