Einzelnen Beitrag anzeigen

Benutzerbild von Michael Habbe
Michael Habbe

Registriert seit: 10. Aug 2005
264 Beiträge
 
Turbo Delphi für Win32
 
#19

Re: Alter berechnen!

  Alt 8. Dez 2008, 19:45
Zitat von thiagojonas:
Okay habe ich verstanden.
Aber was muss ich den tun, damit ich das Alter berechnen kann?
denn 8.12.2008 - 8.12.2008 und ShowMessage(FloatToStr(alter)) kommt bei mir 4 raus.
Vielleicht zuerstmal die Hilfe zum TDateTime-Typ studieren.
Damit hast Du dann das Hintergrundwissen, um damit zu rechnen.

Zitat von Delphi Help System:
TDateTime Typ

TDateTime repräsentiert einen Datums-/Zeitwert in der Sprache Delphi.

Unit
System

Syntax


[Delphi] type TDateTime = TDateTime;


Beschreibung
In Delphi entspricht der Typ TDateTime einem Double-Wert. Der Delphi-Typ TDateTime entspricht der Klasse TDateTime von C++.
Der ganzzahlige Teil eines TDateTime-Wertes von Delphi entspricht der Anzahl der Tage seit dem 30.12.1899. Der fraktionale Teil des TDateTime-Wertes gibt die Tageszeit an.
Es folgen einige Beispiele für TDateTime-Werte und die entsprechenden Datums- und Zeitangaben:
0
30.12.1899 12.00 Uhr

2.75
1.1.1900 18.00 Uhr

-1.25
29.12.1899 6.00 Uhr

35065
1.1.1996 12:00 am


Wenn beide TDateTime-Werte positiv sind, brauchen Sie zur Ermittlung der Tage zwischen zwei Datumsangaben die beiden Werte nur voneinander zu subtrahieren. Um eine Datums-/Zeitangabe um eine bestimmte Anzahl von Tagen zu erhöhen, addieren Sie einfach die Anzahl zu dem TDateTime-Wert hinzu.
Wenn Sie mit negativen TDateTime-Werten arbeiten, muss der Zeitanteil separat berechnet werden. Der Zeitanteil gibt den Bruchteil eines 24-Stundentages ohne Berücksichtigung des Vorzeichens des TDateTime-Wertes wieder. 6:00 am 29.12.1899 ist –1,25, nicht –1 + 0,25, was –0,75 ergäbe. Zwischen – 1 und 0 gibt es keine TDateTime-Werte.
Hinweis:
In Delphi 1.0 wurde das Datum vom Jahr 1 und nicht von 1899 an errechnet. Um ein Delphi 1.0-Datum in einen TDateTime-Wert einer neueren Delphi-Version zu konvertieren, subtrahieren Sie vom Delphi 1.0-Datum den Wert 693594,0.
  Mit Zitat antworten Zitat