Delphi Tips&Tricks News   Tips   .NET Software   VCL Software   Search   Contacts
Ultimate Pack - special offer!

Ultimate Pack  hot!
Image Editor  new!
Runtime Fusion
Form Designer
Object Inspector
Print Suite Pro
Commented Image
Delphi Toys
WinDowse
Delphi Bonus
TMS Scripter Studio
Form Designer VB
Form Designer .NET

...get more...
for Delphi.NET, C#, VB.NET
for Delphi VCL, BCB 3-6

WinAPI Online
Unix Manual Pages
MegaDetailed.NET
in3steps.com
cdtrrracks.com new!

Blogspot  greatis.blogspot.com

Get age from date of birth - DateTime - Tips & Tricks - Greatis Delphi Pages

You can solve this problem by comparing number of month with number of current month and comparing number of day with number of current day, if on the first step was equal.


procedure TForm1.Button1Click(Sender: TObject);
var
  NowYear, NowMonth, NowDay: Word;
  Year, Month, Day: Word;
  YearsOld: Word;
begin
  if Edit1.Text<>'' then
  begin
    DecodeDate(Now, NowYear, NowMonth, NowDay);
    DecodeDate(StrToDateTime(Edit1.Text), Year, Month, Day);
    if NowMonth>Month then
      YearsOld:=NowYear-Year;
    if NowMonth<Month then
      YearsOld:=NowYear-Year-1;
    if NowMonth=Month then
    begin
      if NowDay>=Day then
        YearsOld:=NowYear-Year;
      if NowDay<=Day then
        YearsOld:=NowYear-Year-1;
    end;
    Label2.Caption:=IntToStr(YearsOld)+' years old';
  end;
end;
Related topics
Get difference between of 2 dates
Get days count in month
Get week number of the year
Put current time to the title

For more
Delphi Help

Download source