--- Добавлено в 2018-05-25 15:05:51
Пока бред получается.
Есть у кого ещё win7 64b? Проверьте ошибку. На пустой проект бросьте компонент календарь, увеличьте его размер чтоб отображал 12 месяцев и запустите проект, будут ли в первом месяце выделенные дни?
--- Добавлено в 2018-05-25 15:19:04
tig-rrr, а поставьте эту строку: DayT[1] := $00000000;
Там же в WM_NOTIFY.
Должно получится вот так:
{78} WM_NOTIFY : begin
NMS := PNMSelChange(Msg.lParam);
case NMS.nmhdr.code of
MCN_GETDAYSTATE:
with PMDAYSTATE(Msg.LParam)^ do
begin
sm := stStart.wMonth;//предыдущий месяц с которого начат календарь
i := 0;
while i < cDayState do//cDayState - количество отображаемых месяцев (+2 включая предыдущий и следующий)
begin
DayT[i] := fControl.DayM[sm];
inc(i);
inc(sm);
if sm = 13 then sm := 1;
end;
{вот эту строку} DayT[1] := $00000000;
prgDayState := Cardinal(@DayT);
end;