Форум: "Основная";
Текущий архив: 2003.12.12;
Скачать: [xml.tar.bz2];
Внизсравнение времени Найти похожие ветки
← →
pavel_guzhanov (2003-12-03 08:45) [0]Здравствуйте!
У меня возник следующий вопрос. В программе надо проверить условие: Если системные дата/время больше например 23:00 текущей даты и меньше 01:30 следующего дня, то выполнить определенные действия. Подскажите пожалуйста, как это можно реализовать на Delphi
← →
ЮЮ (2003-12-03 09:08) [1]> и меньше 01:30 следующего дня = ИСТИНА для любого времени СЕГОДНЯ
var Hour, Min, Sec, MSec: Word
DecodeTime(Time, Hour, Min, Sec, MSec);
if (Hour >= 23) or (Hour < 1) or (Hour = 1) and (Min < 30) then begin
//б..., чуть не проспал !!!
end;
← →
Silver Alex (2003-12-03 09:55) [2]function IsPeriod(OnDate,FromDate,ToDate: TDateTime): Boolean;
begin
Result:=(OnDate>FromDate) and (OnDate<ToDate);
end;
if IsPeriod(Now,EncodeDateTime(2003,12,2,23,30,0,0), EncodeDateTime(2003,12,3,13,30,0,0)) then
ShowMessage("Hello");
← →
Johnmen (2003-12-03 10:10) [3]Общее выражение:
( (vStart<vStop) and (vStart<=vNow) and (vNow<=vStop) ) or
( (vStart>=vStop) and ( (vStart<=vNow) or (vNow<=vStop) ) )
где vStart, vStop, vNow - время начальное, конечное, текущее
← →
Anatoly Podgoretsky (2003-12-03 10:27) [4]А кто знает, что 01:30 это следующий день, а не вчерашний?
Не надо хранить время отдельно от дней и сравнивать, для сравнения нужно полное время
← →
Danilka (2003-12-03 10:35) [5]
> Если системные дата/время больше например 23:00 текущей
> даты и меньше 01:30 следующего дня, то выполнить определенные
> действия. Подскажите пожалуйста, как это можно реализовать
> на Delphi
гы, а что, системная дата не равна текущей?
вероятно - машина времени, не видел еще реализацию на дельфях.
← →
Anatoly Podgoretsky (2003-12-03 11:55) [6]
StartDate := Date + StrToTime("23:00:00");
EndDate := Date + 1 + StrToTime("01:30:00");
If (Now >= StartDate) and (Now <= EndDate) then ...
← →
Silver Alex (2003-12-03 12:12) [7]
> EndDate := Date + 1 + StrToTime("01:30:00");
все таки надежнее
EndDate := Date + 1 + EncodeTime(13,30,0,0);
← →
Anatoly Podgoretsky (2003-12-03 12:15) [8]Ну это уже не относится к алгоритму, а к реализации, вопросы надежности и реализации остаются на его совести, задача дать идею и пусть думает.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.12.12;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.008 c