Delphi - Quiero solo numeros en un Edit

 
Vista:

Quiero solo numeros en un Edit

Publicado por many (37 intervenciones) el 14/03/2018 17:10:52
Buenos días amigos del foro

Tengo el siguiente problema:

Teniendo edit1 y edit2

Estando editando en el edit1 necesito enviar el valor de edit1 hacia el edit2 pero el edit2 solo debe recibir numeros y el punto (.)

Aclarando que en el edit1 se pueda escribir sin limitaciones de numeros, letras, punto (.) etc. esto es solo un control para el edit2.

Gracias a todos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 65
Oro
Ha mantenido su posición en Delphi (en relación al último mes)
Gráfica de Delphi

Quiero solo numeros en un Edit

Publicado por E.T. (1244 intervenciones) el 14/03/2018 18:43:36
Cual es la finalidad de pasar de un edit a otro? Igual puedes usar la funcion TryStrToFloat, creo que es esa, es de tipo boolean, puedes usarla asi:
1
2
3
4
5
If(TryStrToFloat(Edit1.text, Variable)) then begin
  //Tu codigo aqui
  Edit2.text := edit1.text;
end;
//variable es de tipo extended y llevaría el valor convertido del edit1 a numérico en caso de exito
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Quiero solo numeros en un Edit

Publicado por many (37 intervenciones) el 15/03/2018 04:14:03
Buenas noches

En un formulario de facturación y tengo los siguiente:

1
2
3
4
5
6
7
IF length(CODIGO.Text) < 2 then
begin
    CANTIDAD.Text := copy(CODIGO.Text,1,1);
    codigo.Text := '';
    codigo.SetFocus;
    exit;
end;

Tomo los códigos con un lector óptico pero en este mismo código puedo escribir la cantidad que el cliente esta comprando, entonces siempre y que sea de un solo dígito el sistema lo traslada a la cantidad y se queda posicionado en el código.

El problema es que un solo dígito puede ser 3, 5, 7 pero también puede ser a, g, i etc. Y entonces debo controlar para a la cantidad solo lleguen números de 1 a 9.

Saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Quiero solo numeros en un Edit

Publicado por Torcido (1 intervención) el 25/04/2018 14:23:48
Crea un función para eso:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
function SoloNumeros( entrada: string): string;
var
t,i: integer;
s: string;
begin
result := '';
t := length(entrada);
for i := 1 to t do begin
   s := copy(entrada, i, 1);
   if (s >= '0') AND (S<='9') THEN
      result := result + s;
   end;
 
end;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar