Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Вычисление первого и последнего дня недели! [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


Наверх

Титульная страница Поиск, карта сайта Написать письмо