lt;lt;lt;lt;lt;lt;lt;CALCULAR IDADE ME AJUDAgt;gt;
Oi galera me ajuda.......Eu achei esta funçao na internet , + como faço para usa no delphi....Eu quero calcuala Idade , quando digita a data de Nascimento(Edinicial) e data Autual(EdFinal) e sai o resultado na Label como STRING....... agradeço Jairo-GO
var
Anos, Meses, Dias : integer;
sAnos, sMeses, sDias : string;
begin
{ --- Calcula o número de anos --- }
Anos := 0;
while NumDias >= 365 do
begin
Anos := Anos + 1;
NumDias := NumDias - 365;
end;
if Anos > 1 then
sAnos := ´ anos,´
else
sAnos := ´ ano,´;
{ --- Calcula o número de meses --- }
Meses := 0;
while NumDias >= 30 do
begin
Meses := Meses + 1;
NumDias := NumDias - 30;
end;
if Meses > 1 then
sMeses := ´ meses e ´
else
sAnos := ´ mês e ´;
{ --- O Número de dias é a sobra --- }
Dias := NumDias;
if sDias > 1 then
sDias := ´dias´
else
sDias := ´dia´;
Return := Inttostr(Anos)+sAnos+inttostr(Meses)+sMeses+inttostr(Dias)+sDias;
end;
Meu Email: jairobig@hotmail.com
var
Anos, Meses, Dias : integer;
sAnos, sMeses, sDias : string;
begin
{ --- Calcula o número de anos --- }
Anos := 0;
while NumDias >= 365 do
begin
Anos := Anos + 1;
NumDias := NumDias - 365;
end;
if Anos > 1 then
sAnos := ´ anos,´
else
sAnos := ´ ano,´;
{ --- Calcula o número de meses --- }
Meses := 0;
while NumDias >= 30 do
begin
Meses := Meses + 1;
NumDias := NumDias - 30;
end;
if Meses > 1 then
sMeses := ´ meses e ´
else
sAnos := ´ mês e ´;
{ --- O Número de dias é a sobra --- }
Dias := NumDias;
if sDias > 1 then
sDias := ´dias´
else
sDias := ´dia´;
Return := Inttostr(Anos)+sAnos+inttostr(Meses)+sMeses+inttostr(Dias)+sDias;
end;
Meu Email: jairobig@hotmail.com
Anonymous
Curtidas 0
Respostas
Dor_poa
10/02/2003
Function DescobreIdade(Data: String): Integer;
var anoAtu,Ani :Integer;
Dt: TDateTime;
begin
if (Data = ´´) THEN
begin
Result := 0; exit;
end;
If (Data = ´ / / ´)then
begin
Result := 0; exit;
end;
If (Data = ´ / / ´)then
begin
Result := 0; exit;
end;
try
anoAtu := StrToInt(Copy(DateToStr(date),7,18));
Ani := StrToInt(Copy(Data,7,18));
dt := StrToDate(Copy(DateToStr(Date),0,6) + IntToStr(ani)); //Como se fosse Hoje
except
ShowMessage(´Falta números na data!´);
Result := 0; exit;
end;
if Dt < StrToDate(Data)then
Result := (anoAtu - ani)-1 else
Result := (anoAtu - ani);
End;
PARA VISUALIZAR A IDADE EM UM LABEL:
Idade.Caption := IntToStr(DescobreIdade(FuncionariosDt_nasciment.AsString)) + ´ anos´ else
var anoAtu,Ani :Integer;
Dt: TDateTime;
begin
if (Data = ´´) THEN
begin
Result := 0; exit;
end;
If (Data = ´ / / ´)then
begin
Result := 0; exit;
end;
If (Data = ´ / / ´)then
begin
Result := 0; exit;
end;
try
anoAtu := StrToInt(Copy(DateToStr(date),7,18));
Ani := StrToInt(Copy(Data,7,18));
dt := StrToDate(Copy(DateToStr(Date),0,6) + IntToStr(ani)); //Como se fosse Hoje
except
ShowMessage(´Falta números na data!´);
Result := 0; exit;
end;
if Dt < StrToDate(Data)then
Result := (anoAtu - ani)-1 else
Result := (anoAtu - ani);
End;
PARA VISUALIZAR A IDADE EM UM LABEL:
Idade.Caption := IntToStr(DescobreIdade(FuncionariosDt_nasciment.AsString)) + ´ anos´ else
GOSTEI 0
Anonymous
10/02/2003
Eu quero saber o seguinte Ex: no Form Tem o Botao e 2 Edit e um Label ..No Edit1 contendo a data de Nascimento e no Edit2 a Data atual ........quando eu coloca valor nos Edit e clica no botao, calular e o resultado Sair na Label..........Jairo-GO sou iniciante .........
GOSTEI 0
Carnette
10/02/2003
Chega de re-invetar a roda...Procure no GOOGLE...a UNIT ESBDATES..
esta unite tem todas as funcoes p/calculos de datas
esta unite tem todas as funcoes p/calculos de datas
GOSTEI 0