![]() |
Delphi-Version: 2005
DateTimePicker 2.Donnerstag im Monat anzeigen
Hallo
Mein Problem ist, das ich immer den zweiten Donnerstag im Montat das Datum angezeigt bekomme. Wie kann man das hinbekommen? MfG Uwe 111 |
AW: DateTimePicker 2.Donnerstag im Monat anzeigen
Hört sich für mich schwer danach an, dass man das selbst berechnen muss. Wobei es hier im Forum mal so einen Datums-Guru gab, der für alles mögliche Datums-Funktionen geschrieben hat.
|
AW: DateTimePicker 2.Donnerstag im Monat anzeigen
Ich würde einfach mit EncodeDate den ersten Tag des Monats festlegen, mit DayOfTheWeek den Wochentag ermitteln und dann hochzählen.
|
AW: DateTimePicker 2.Donnerstag im Monat anzeigen
Delphi-Quellcode:
// Weekday = Wochentag, 1=sonntag, 2=Montag,...
// position darf von 1 bis 4 liegen function GetWochentagX(datum:TDateTime; Weekday, position:integer); var monatsanfang : TDateTime; begin monatsanfang := StartOfMonth(datum); // Monatanfang 01.mm.jjjj if (Weekday < 1) or (Weekday>7) then Weekday := 1; // Zur Sicherheit, damit keine Endlosschleife entsteht while Weekday <> DayOfWeek(monatsanfang) do monatsanfang := monatsanfang + 1.0; // nächster Tag result := monatsanfang + 7.0 * (position -1); end; // Hilfsfunktionen function ReplaceDateParts(ADate:TDateTime; year, month, day: Word):TDateTime; var y, m, d : Word; begin DecodeDate(ADate, y, m, d); if year <> 0 then y := year; if month <> 0 then m := month; if day <> 0 then d := day; result := EncodeDate(y, m, d); end; function StartOfMonth(ADate:TDateTime):TDateTime; begin Result := ReplaceDateParts(ADate, 0, 0, 1); end; |
AW: DateTimePicker 2.Donnerstag im Monat anzeigen
Hallo shmia
Besten Dank es funkioniert.:thumb: MfG Uwe 111 |
AW: DateTimePicker 2.Donnerstag im Monat anzeigen
|
AW: DateTimePicker 2.Donnerstag im Monat anzeigen
Siehe da, er hat sich von selbst eingefunden :mrgreen:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:07 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz