2009-06-25 1 views
1

У меня есть следующий бит кода Delphi 7, чтобы увеличить значение TDateTime на один час. По какой-то причине это не работает.Процедура IncHour в DateUtils

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

Содержание StatusMemo после запуска кода:

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

Он ведет себя как IncHour не работает. Я попытался использовать IncMinute (dtval, 60) и получил тот же результат. Что мне не хватает?

ответ

13

IncHour возвращает добавочное значение, оно не обновляет переданную переменную.

Так что вам нужно сделать:

dtval := IncHour(dtval, 1); 
+0

Бинго. Спасибо. Я полностью пропустил, что это была функция, а не процедура. – tim11g

+5

Хм, это имя несчастливо. С помощью целых чисел это Inc (x) или x: = Succ (x). –

+0

Кажется, RTFM перед использованием избежит всего вопроса .... –

 Смежные вопросы

  • Нет связанных вопросов^_^