![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Вычисление первого и последнего дня недели! [D7, WinXP]
serguncho © (2005-07-22 15:04:00)Добрый день!
ВОзникла проблема с получение даты первого и последнего дней недели.
Использую код:
now_day:=dayofweek(monthcalendar1.Date)-1;
decodedate(monthcalendar1.Date,y1,m1,d1);
if now_day=0 then
begin
first_day:=d1-6;
last_day:=d1;
end
else
begin
last_day:=7-now_day+d1;
first_day:=d1-now_day+1;
end;
Работает хорошо только, если все дни недели одного месяца. Если получается конец одного и начало другого месяца на одной недели, то уже не работает. Как разрешить эту проблемку?
serguncho (2005-07-22 16:15:00) [1]Спасибо всем!
Digitman (2005-07-22 15:20:00) [2]procedure TForm1.Button1Click(Sender: TObject);
var
dt: TDateTime;
now_day: Integer;
begin
dt := strtodatetime('1.7.2005');
now_day:=dayofweek(dt)-1;
showmessage('Начало : ' + datetimetostr(dt - now_day + 1) + ' Конец : ' + datetimetostr(dt + 7 - now_day));
end;
Anatoly Podgoretsky (2005-07-22 15:10:00) [3]Date - DayOfTheWeek(Date)-1
Плохиш (2005-07-22 15:07:00) [4]StartOfTheWeek