• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Выделение Дат В Datetimepicker

  • Автор темы AntiFazer
  • Дата начала
A

AntiFazer

Есть список дат, которые необходимо выделить в выпадающем из DateTimePicker календарике. Можно жирным шрифтом или цветом, подойдет любой вариант.

Можно ли это осуществить с этим компонентом?
 
S

sinkopa

Есть список дат, которые необходимо выделить в выпадающем из DateTimePicker календарике. Можно жирным шрифтом или цветом, подойдет любой вариант.
Можно ли это осуществить с этим компонентом?
Нет однозначного ответа на Ваш вопрос...
Непосредственно TDateTimePicker не имеет такой возможности.
Однако его "брат" (по наследованию от TCommonCalendar) TMonthCalendar имеет событие OnGetMonthInfo.
Оба эти контрола содержат метод-утилиту BoldDays, который помогает конвертировать массив (список дней которые нужно выделить) в бинарную маску, но в TDateTimePicker (без извращений) применить его, к сожалению, некуда.
Правда в Delphi XE у TDateTimePicker добавилось собственное событие OnGetMonthBoldInfo, так что подозреваю, там (в XE) с "жирно-выделением" все в порядке.
Короче говоря, ответ зависит от того, насколько Вы готовы "поработать напильником". У Вас Есть несколько возможностей:
1. Вместо одного TDateTimePicker использовать 2 контрола TComboBox + TMonthCalendar.
2. Написать собственного наследника TCommonCalendar дополнив DateTimePicker недостающим функционалом из TMonthCalendar. (или подглядев в исходники Delphi XE)
3. Найти и использовать альтернативный компонент. например
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!