Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.10.10;
Скачать: CL | DM;

Вниз

TDateTime   Найти похожие ветки 

 
Лана Розанова ©   (2002-10-01 11:17) [0]

Как к переменной TDateTime прибавить 1-у минуту?
СПАСИБО!!!


 
NP-237 ©   (2002-10-01 11:22) [1]

+EncodeTime(Hour, Min, Sec, MSec: Word)
+ EncodeTime(0, 0, 1, 0)


 
Лана Розанова ©   (2002-10-01 11:38) [2]

А если min=59 она учтет переход часа, дня, месяца, года?


 
NP-237 ©   (2002-10-01 11:44) [3]

Конечно. Ведь TDateTime - это обычный тип Double.
Я например последний день месяца определяю как
EnCodeDate(2002,6,1)-1


 
han_malign   (2002-10-01 11:50) [4]

dt:=dt+1.0/(60*24);{1 день/24 часа/60 минут}
поскольку TDateTime это дробное количество дней прошедших с 12/30/1899 (причем и в сторону убывания тоже)- то учтутся все переходы
З.Ы. На самом деле самое сложное это конвертация DateTime в реальное время и обратно, но это уже все сделано.
Из help-а
0 12/30/1899 12:00 am
2.75 1/1/1900 6:00 pm
-1.25 12/29/1899 6:00 am
35065 1/1/1996 12:00 am


 
User-log   (2002-10-01 12:12) [5]

А у меня так не получается:
var
DT,DateStart,TimeStart,DateEnd,TimeEnd:TDateTime;
begin
DT:=now;
DecodeTime(DT,hour,min,sec,msec);
DecodeDate(DT,year,month,day);
DateStart:=EncodeDate(year,month,day);
TimeStart:=EncodeTime(hour,min,sec,msec);
TimeEnd:=TimeStart+EncodeTime(0,1,0,0);
Как, если время стало 00:00:00, прибавить день?
end;


 
NP-237 ©   (2002-10-01 12:20) [6]

Работать с датой а не с временем.

DateStart := EncodeDate(year,month,day);
DateEnd := DateStart+EncodeTime(0,1,0,0);

Ну а чистое время можно уже выдернуть.


 
NP-237 ©   (2002-10-01 12:24) [7]

описка, надо
DateStart := EncodeDate(year,month,day)+TimeStart;


 
han_malign   (2002-10-01 12:27) [8]

2User-log
35065 дней от 12/30/1899 минус 1/24/60(одна минута) равно
35064 дня и (24*60-1)/(24*60)(23 часа и 59 минут) от 12/30/1899
как видите число уменьшилось (принцип адитивности имеет обратную силу(65535.99+0.01=65536 - день следующий))



Страницы: 1 вся ветка

Текущий архив: 2002.10.10;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.011 c
1-31807
Deman
2002-09-28 03:15
2002.10.10
Как поюзать форму из Dll


1-31821
jessis
2002-09-27 12:52
2002.10.10
Отлавливание комбинации клавиш


8-31906
Ocean
2002-06-10 17:58
2002.10.10
Рисование в контроле


7-32053
Metallica
2002-07-31 10:21
2002.10.10
---> Блокировка


6-31923
SeF
2002-08-09 16:03
2002.10.10
HTTP