Hallo,
ich programmiere mit Delphi 2005 Pro und habe ein Problem mit dem DateTimePicker und dem Setzen des Datums und der Min-/Max-Werte zur Laufzeit. Das Auswahldatum darf nur zwischen einem Erfassungsdatum und dem aktuellen Tagesdatum liegen. Der Code sah bisher so aus:
Delphi-Quellcode:
// aktuelles Datum setzen
DateTimePicker1.Date := Date();
// Min/Max-Datum setzen
DateTimePicker1.MinDate := Trunc (adsTblAuftrag.FieldByName('ErfassDatum').AsDateTime);
DateTimePicker1.MaxDate := Date();
Unter Windows XP funktioniert das auch. Unter Windows Vista erhalte ich aber ab dem zweiten Aufruf die Meldung "Kalenderzeit und -datum konnte nicht gesetzt werden". Das Problem sind offensichtlich die Zuweisungen der Min-/Max-Werte. Ich habe den Code auch schon so abgeändert:
Delphi-Quellcode:
// Min/Max-Datum rücksetzen
DateTimePicker1.MinDate := 0;
DateTimePicker1.MaxDate := 0;
// aktuelles Datum setzen
DateTimePicker1.Date := Date();
// Min/Max-Datum neu setzen
DateTimePicker1.MinDate := Trunc (adsTblAuftrag.FieldByName('ErfassDatum').AsDateTime);
DateTimePicker1.MaxDate := Date();
Die Fehlermeldung unter Windows Vista kommt aber weiterhin, während es mit Windwos XP weiter funktioniert.
Wie läßt sich das Problem lösen ?
Mike