Функции работы с календарем |
К полям ввода с типом date или dateTime автоматически добавляются кнопки выбора в виде календариков. При этом размер по горизонтали самого поля даты уменьшается на ширину этой кнопки (12 точек). При возникновении события cmPick (например, по клавише F3) или при нажатии мышкой на кнопку выбора открывается окно календаря. Календарь и кнопка его вызова не появляются у защищенных полей (с атрибутом protect). У полей с атрибутом pickButton кнопка вызова календаря появляется всегда независимо от наличия атрибута protect.
При выборе мышью или нажатии клавиши Enter окошко закрывается и устанавливается дата в поле ввода. При нажатии клавиши Esc или мышью за пределами окна оно закрывается без изменения даты.
Если для поля даты установлена обработка события cmPick, то сначала вызовется прикладная обработка. Если нужно, чтобы после нее не вылезал системный календарь, в обработчике надо вызывать Stop.
Выходные дни рисуются жирным шрифтом, что не отражается на работе календаря. Список рабочих и не рабочих дней можно откорректировать методом Calendar_SetWorkDay.
Внешний вид календаря управляется параметрами конфигурационного файла:
Calendar.ShowWeeks : boolean - показывать номера недель;
Calendar.ShowToday : boolean - показывать сегодняшнее число.
Метод SetWindowCalendarContext