Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   validacion de edit (https://www.clubdelphi.com/foros/showthread.php?t=74399)

rogercito 16-06-2011 21:50:47

validacion de edit
 
hola , que tal soy nuevo en este tema y me piden que realize una alta , y que en los edit no se puedan ingresar numeros y que tampoco el campo este vacio , lo mismo para otros edit que se ingrese letras y que el campo no este vacio como lo realio ??
gracias

oscarac 16-06-2011 21:54:13

hola como estas...
aqui puedes encontrar informacion sobre lo que buscas
asi mismo en el buscador puedes encontrar mucha ayuda sobre el tema

saludos

rogercito 16-06-2011 22:02:43

procedure TForm1.edit1keypress(Sender: TObject; var Key: Char);

begin
if not(Upcase(Key) in[#8,#32,{'0'..'9'}'A'..'Z','a'..'z','Ñ','ñ']) then
begin
Key:= #0;

end;
end;

este es el codigo que utilizo para validar el ingreso de numero , lo que me faltaria es como dentro de ese if valido que si no ingresa nada no pueda avanzar al sigueinte ... probe de una forma no me deja avanzar pero me habilita los numeros
gracias

oscarac 16-06-2011 22:23:42

de que forma lo probaste?

otra cosa que podrias hacer es usar Tambien el evento onexit y preguntar mas o menos asi


Código Delphi [-]
 
if edtloquesea.Text = '' Then
   edtloquesea.setfocus

rogercito 16-06-2011 22:28:42

validacion de edit
 
hola , que tal tengo 2 codigosque saque de esta pagina que funcionan pero quisiera agregarles la validacion para saber si aprietan ENTER si el campo no fue llenado se los paso a continuacion

procedure TForm1.edit1keypress(Sender: TObject; var Key: Char);

begin
if not(Upcase(Key) in[#8,#32,{'0'..'9'}'A'..'Z','a'..'z','Ñ','ñ']) then
begin
Key:= #0;

end;
end;


el otro es :
begin
if (key <#48) or (key >#57) then
if key<>#8 then
begin
beep;
showmessage('Solo Puede Ingresar Números');
key:=#0;
end;
end;


a estos codigos les agregue
if key=#13 then //presiona enter y se salta
begin
if edit1.text=´´ then //si esta vacio
begin
showmessage(´el campo esta vacio´);
edit1.setfocus; //se queda ahi
end
else
edit2.setfocus; // salta al siguiente
end;


pero resulta que cuando agrego esto , no me toma las validaciones que realizo primero ...

su ayuda me importa
gracias

rogercito 16-06-2011 22:31:08

muchas gracias por tus respuestas , acabo de publicar otro tema con el mismo titulo ..donde escribo todo , espero que me puedas ayudar ..desde ya muchas gracias y disculpa las molestias

BlueSteel 16-06-2011 22:31:12

Estimado

No repitas hilos con la misma pregunta. Favor lee la guia de estilo y utiliza los Tag's

Gracias

oscarac 16-06-2011 22:37:26

no publiques otro hilo, quedate en este porque si no la gente se pierde un poco con las respuestas

beginner01 16-06-2011 22:39:15

saludos.


prueba de esta manera.
Código Delphi [-]
//evento onKeyDown del edit
procedure TForm2.Edit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin

 if Key=13 then
 begin
 ShowMessage('se ha presionado la tecla enter');
 end;

end;

//evento onKeyPress del edit
procedure TForm2.Edit1KeyPress(Sender: TObject; var Key: Char);
begin

  if (not(Upcase(Key) in[#8,#32,{'0'..'9'}'A'..'Z','a'..'z','Ñ','ñ'])) then
  begin
  Key:= #0;
  end;

end;

Casimiro Noteví 16-06-2011 23:44:04

Por favor, no repitas hilos, recuerda nuestra guía de estilo, gracias por tu colaboración.

rogercito 16-06-2011 23:59:41

Hola disculpen por haber publicado en dos hilos diferentes ....... Cuendo pruebo agregando la validacion de que no deje espacios vacios en el edit me anula las otras validaciones m........ Gracis por la ayuda


La franja horaria es GMT +2. Ahora son las 12:02:27.

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