Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Validar numeros y letras en un Edit? (https://www.clubdelphi.com/foros/showthread.php?t=2432)

danytorres 23-07-2003 18:36:33

Validar numeros y letras en un Edit?
 
Hola a todos los del foro. Necesito la ayuda de ustedes nuevamente, quiero validar en un edit que el usuario no pueda introducir letras solamente numeros. Le agradeceria quen pudiera ayudarme.

________________
Un saludo a todos............

delphi.com.ar 23-07-2003 18:40:51

¿Has probado utilizar un TMaskEdit?

Saludos!

danytorres 23-07-2003 18:44:59

El TMaskEdit en los edit donde esta, en las propiedades no esta y coloco Edit1. y no sale, yo la e usado pero en los DBEdit.

delphi.com.ar 23-07-2003 18:50:17

¡La verdad que no te entendí nada!...
El TMaskEdit lo encuentras en la ficha "Additional", si quieres usar un DBEdit, utiliza un DBEdit standard y cerciórate que el campo que lo carga sea del tipo indicado, o modifica la propiedad EditFormat del campo.

Saludos!

danytorres 23-07-2003 18:57:00

Disculpa delphi.com.ar, estoy utilizando un Edit mi pregunta es como puedo validar numeros y letras con este componente, el MaskEdit le puedes colocar varias mascaras, pero quisera saber como lo hago con un Edit. Gracias por tomarte la molestia de responder.

___________________
Un saludo a todos....

delphi.com.ar 23-07-2003 19:03:38

Te recomiendo este hilo: http://www.clubdelphi.com/foros/show...ight=clipboard

Saludos!

danytorres 23-07-2003 19:20:21

Gracias, el hilo que me recomemndastes me funciona muy bien.

__________________
Un saludo a todos...

Julio César 15-08-2003 18:50:43

Saludos

Puedes validar datos usando el evento OnKeyPress del Edit de la siguiente forma:


procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if (key <#48) or (key >#57) then
if key<>#8 then
begin
beep;
showmessage('Solo puedes introducir números');
key:=#0;
edit1.SetFocus;
end;
end;

end.


En la ayuda de Delphi busca Key codes y encontraras todas las teclas del teclado.

Espero que te sea util

danytorres 15-08-2003 21:52:02

Gracias julio funciona bien.

gonza_619 12-11-2010 21:29:21

bien ahora el problema es cuando por ejemplo, en un edit ingreso una calle llamada= '3 de febrero'
en este caso solo debo validar para q se ingrese numeros y letras y no otra cosa como ',' o '$' y demas, intente con

Código Delphi [-]
 if not(Key in ['0'..'9',#8],['a'..'z','ñ','A'..'Z','Ñ',#32,#8]) then
 begin
 key := #0;
   beep;
end;

que dicen, estaria en lo correcto?

ecfisa 12-11-2010 21:58:20

Hola gonza.

Debería ser:
Código Delphi [-]
procedure TForm1.EditKeyPress(Sender: TObject; var Key: Char);
begin
  if not(Upcase(Key) in[#8,'0'..'9','A'..'Z','Ñ','ñ']) then
  begin
    Key:= #0;
    MessageBeep(MB_ICONERROR);
  end;
end;

Y para prevenir posibles ingresos erroneos mediante copiado/pegado:
Código Delphi [-]
procedure TForm1.EditExit(Sender: TObject);
var
  i: Integer;
begin
  for i:= 1 to Length((Sender as TEdit).Text) do
   if not(Upcase((Sender as TEdit).Text[i]) in [#8,'0'..'9','A'..'Z','Ñ','ñ']) then
   begin
     MessageBeep(MB_ICONERROR);
     (Sender as TEdit).SetFocus;
   end;
end;

Saludos. :)

gonza_619 12-11-2010 22:06:17

bien , el problema es que no me deja poner un espacio, pitido de error me tira, no se como validar el espacio, gracias

ecfisa 12-11-2010 22:42:27

Cita:

Empezado por gonza_619 (Mensaje 382204)
bien , el problema es que no me deja poner un espacio, pitido de error me tira, no se como validar el espacio, gracias

Hola.
Código Delphi [-]
   if not (Upcase(Key) in [#8,' ',...

Saludos. :)


La franja horaria es GMT +2. Ahora son las 13:01:42.

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