Mein vorlaüfiges Zwischenergebnis sieht jatzt so aus:
Wie ich Euch kenne, ist der Code noch optimierbar
Zumindest funktioniert es so erst einmal.
Delphi-Quellcode:
//Wolfgang Mix - Delphi-PRAXiS
//Gültigkeitsbereich 1.1.0001 ... 31.12.9999
function IsDateOk(d,m,y:integer):boolean;
var ds,ms,ys,dates:
string;
d1:TDateTime;
begin
result:=false;
//Nullen davor, wenn <10
str(d,ds);
if d<10
then ds:='
0'+ds;
str(m,ms);
if m<10
then ms:='
0'+ms;
str(y,ys);
//Jahr immer 4-stellig
while length(ys)<4
do ys:='
0'+ys;
dates:=ds+'
.'+ms+'
.'+ys;
//Dank Nersgatt - DP
if tryStrToDate(dates,d1)
then result:=true;
end;
procedure TForm1.Button1Click(Sender: TObject);
Begin
Edit1.Text:=BoolToStr(IsDateOk(25,13,1950));
end;
Gruß
Wolfgang