Vailidação de data de nascimento
Eaee pessoal.
Estou tentando fazer a validação da data de nascimento, tenho um Campo MaskEdit 99/99/0000;1;
Coloquei o código que estou usuando no final, o problema e que dá erro se coloco uma data inválida ou quando digito uma data incompleta ou quando começo a digitar a data e depois apago ela assim também da erro.
Se alguem puder me ajudar, ou se tiver alguma outra idéia para fazer a validação.
Desde já muito obrigado.
Function TFmClientes.DataValida(StrD: string): Boolean;
// Testa se uma data é válida
var
D : TDateTime;
begin
if (MaskEdit4.Text = (´ / / ´)) then
begin
Result := True;
end
else
begin
Result := True;
try
D := StrToDate(StrD);
except
on EConvertError do Result:=False;
end;
end;
end;
procedure TFmClientes.MaskEdit4Exit(Sender: TObject);
begin
If not DataValida(maskEdit4.text) then
Begin
ShowMessage(´DATA Inválida !!´);
MaskEdit4.Text := ´´;
MaskEdit4.SetFocus;
End
Else
end;
Estou tentando fazer a validação da data de nascimento, tenho um Campo MaskEdit 99/99/0000;1;
Coloquei o código que estou usuando no final, o problema e que dá erro se coloco uma data inválida ou quando digito uma data incompleta ou quando começo a digitar a data e depois apago ela assim também da erro.
Se alguem puder me ajudar, ou se tiver alguma outra idéia para fazer a validação.
Desde já muito obrigado.
Function TFmClientes.DataValida(StrD: string): Boolean;
// Testa se uma data é válida
var
D : TDateTime;
begin
if (MaskEdit4.Text = (´ / / ´)) then
begin
Result := True;
end
else
begin
Result := True;
try
D := StrToDate(StrD);
except
on EConvertError do Result:=False;
end;
end;
end;
procedure TFmClientes.MaskEdit4Exit(Sender: TObject);
begin
If not DataValida(maskEdit4.text) then
Begin
ShowMessage(´DATA Inválida !!´);
MaskEdit4.Text := ´´;
MaskEdit4.SetFocus;
End
Else
end;
Mano_froids
Curtidas 0
Respostas
Edilcimar
15/12/2007
no onexit do maskedit faça o seguinte
try
datanascimento := datetostr(maskeditX.text);
except
shomessage(´esta não é uma data válida´);
maskeditX.setfocus;
end;
try
datanascimento := datetostr(maskeditX.text);
except
shomessage(´esta não é uma data válida´);
maskeditX.setfocus;
end;
GOSTEI 0
Mano_froids
15/12/2007
no onexit do maskedit faça o seguinte
try
datanascimento := datetostr(maskeditX.text);
except
shomessage(´esta não é uma data válida´);
maskeditX.setfocus;
end;
Só não entendi uma coisa.
datanascimento := datetostr(maskeditX.text);
Datanascimento é o q?
Desde já muito obrigado pela ajuda
GOSTEI 0
Edilcimar
15/12/2007
Teoricamente,seria a variável à qual vc está determinando o valor da data do nascimento!
GOSTEI 0