AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Geburtstag Erinnerer tage eingeben

Ein Thema von Marcoo · begonnen am 28. Nov 2010 · letzter Beitrag vom 28. Nov 2010
Antwort Antwort
Marcoo

Registriert seit: 3. Nov 2010
Ort: Bergkamen (Bei Dortmund)
10 Beiträge
 
Delphi 2010 Architect
 
#1

Geburtstag Erinnerer tage eingeben

  Alt 28. Nov 2010, 11:59
Hallo also das programm an dem ich grad arbeite ist ein Geburtstags errinerer und da muss man ja logischer weise den tag des geburtstags eintragen ich hab das nur halb hingekriegt also es geht aber nur 1 mal also kann ich den 28.11.2010 eintragen aber am 28.11.2011 wird er mich nicht errinert

Delphi-Quellcode:
var
  jahr, monat, tag: Word;
begin
  DecodeDate(Date, jahr, monat, tag);
  DatePicker.Date := Date;
  DatePicker.Calendar.MinDate := Date;
  DatePicker.Calendar.MaxDate := Date + 365;
und die tage bis zu dem im datepicker angegeben tag berechnet er mit
Delphi-Quellcode:
AdvSmoothListBox1.Items[i].Notes := inttostr
(DaysBetween(strtodate(AdvSmoothListBox1.Items[i].Info), now))
+ ' Tage noch';
Marco
  Mit Zitat antworten Zitat
Marcoo

Registriert seit: 3. Nov 2010
Ort: Bergkamen (Bei Dortmund)
10 Beiträge
 
Delphi 2010 Architect
 
#2

AW: Geburtstag Erinnerer tage eingeben

  Alt 28. Nov 2010, 12:12
Ok ist erledigt hab ne Lösung gefunden nicht die beste aber besser als gar nichts und zwar mach ich dann einfach
in dem moment wo der geburtstag ist flgendesadvsmoothlistbox1.items[i].Info:=datetostr(Date + 365);
Marco
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Geburtstag Erinnerer tage eingeben

  Alt 28. Nov 2010, 12:13
Du musst beim Geburtsdatum das Jahr außer Acht lassen. Man könnte also beispielsweise so vorgehen:
- aktuelles Datum dekodieren
- Geburtsdatum dekodieren
- ist der aktuelle Monat größer als der Geburtsmonat, ist der nächste Geburtstag im Folgejahr
- ist der aktuelle Monat gleich dem Geburtsmonat, Tage vergleichen
- ist der aktuelle Monat kleiner als der Geburtsmonat, ist der nächste Geburtstag in diesem Jahr
Du hast nun also das Jahr des nächsten Geburtstages ermittelt. Nun kannst Du den nächsten Geburtstag wieder kodieren und mit DaysBetween die Anzahl der Tage ermitteln.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#4

AW: Geburtstag Erinnerer tage eingeben

  Alt 28. Nov 2010, 12:27
Ok ist erledigt hab ne Lösung gefunden nicht die beste aber besser als gar nichts und zwar mach ich dann einfach
in dem moment wo der geburtstag ist flgendesadvsmoothlistbox1.items[i].Info:=datetostr(Date + 365);
Nur so zur Info: ca. alle 4 Jahre ist ein Schaltjahr, das 366 Tage hat.
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#5

AW: Geburtstag Erinnerer tage eingeben

  Alt 28. Nov 2010, 12:47
Deshalb gibt es auch die Funktion "IsLeapYear".
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von Wolfgang Mix
Wolfgang Mix

Registriert seit: 13. Mai 2009
Ort: Lübeck
1.222 Beiträge
 
Delphi 2005 Personal
 
#6

AW: Geburtstag Erinnerer tage eingeben

  Alt 28. Nov 2010, 12:49
Die Unit DateUtils von Delphi oder die Unit DateUtils2 aus der CodeLib könnte weiterhelfen
Wolfgang Mix
if you can't explain it simply you don't understand it well enough - A. Einstein
Mein Baby:http://www.epubli.de/shop/buch/Grund...41818516/52824
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#7

AW: Geburtstag Erinnerer tage eingeben

  Alt 28. Nov 2010, 13:05
Nur so zur Info: ca. alle 4 Jahre ist ein Schaltjahr, das 366 Tage hat.
Und Satzzeichen darf man auch in nicht Schaltjahren benutzen.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#8

AW: Geburtstag Erinnerer tage eingeben

  Alt 28. Nov 2010, 13:27
Und Satzzeichen darf man auch in nicht Schaltjahren benutzen.
Die Gross/Kleinschreibung ist auch wichtig. Bei solchen Fällen empfehle ich immer Linux, um das zu lernen.
Gruß
Hansa
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:54 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz