Question

J'ai le bit suivant du code Delphi 7 pour incrémenter une valeur TDateTime d'une heure. Pour une raison quelconque, cela ne fonctionne pas.

 StatusMemo.Lines.Add('prior '+DateTimeToStr(dtval));
 IncHour(dtval,1); // add an hour for DST
 StatusMemo.Lines.Add('after '+DateTimeToStr(dtval));

Contenu de StatusMemo après exécution du code:

prior 6/24/2009 5:35:40 AM
after 6/24/2009 5:35:40 AM

Il se comporte comme si IncHour ne fonctionnait pas. J'ai essayé d'utiliser IncMinute (dtval, 60) et j'ai obtenu le même résultat. Qu'est-ce qui me manque?

Était-ce utile?

La solution

IncHour renvoie la valeur incrémentée, il ne met pas à jour la variable transmise.

Vous devez donc faire:

dtval := IncHour(dtval, 1);
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top