Задача: использовать стандартный элемент управления Win32 MonthCal и раскрашивать такие дни, как праздники, КРАСНЫМ цветом.
Похоже, что собственный подход Win32 будет использовать уведомление MCN_GETDAYSTATE, которое, похоже, позволяет рисовать только определенные дни жирным шрифтом.
Возможным (но отвергнутым) решением было бы написать мой собственный расписанный по желанию MonthCalendar, заставив меня отказаться от поддержки темы - это означает, что, скорее всего, мой контроль не будет согласован с пользовательским интерфейсом, когда появятся новые темы.
Если кто-нибудь сталкивался с этой проблемой, решение было бы очень полезно.





Не может быть сделано. Этот элемент управления поддерживает выделение только некоторых дней жирным шрифтом.
На какую платформу вы ориентируетесь (настольный компьютер или WM?) Если настольный компьютер, действительно ли это Win32 или приемлемо решение MFC?
Что ж, если ваше приложение не использует какой-либо MFC, а написано на чистых вызовах win32, об элементе управления MFC для выполнения того, что вы хотите, не может быть и речи. Таким образом, вы можете создать элемент управления с помощью MFC или win32 - очевидно, что элемент управления MFC будет использовать win32 под капотом, но 15-летняя конвенция разработчиков Windows гласит, что когда кто-то говорит об элементе управления win32, это элемент управления, который `` использует только вызовы win32 , никаких внешних библиотек », а« элемент управления MFC »- это« элемент управления, который прямо или косвенно является производным от CWnd и использует классы и шаблоны использования MFC ».
Во всяком случае, посмотрите http://www.bcgsoft.com/samples/calendar.htm. У них есть элемент управления в их пользовательском интерфейсе, который выглядит как элемент управления MonthCal, но где вы можете указывать диапазоны дат и т. д. С помощью цветов.
Я думаю, что жесткое требование к определенному цвету уже выгоняет вас из поддержки темы.