Форум — Ответы ( К темам )
? | Vladimir: Помогите с пользованием TMonthCalendar (23-01-2003 11:50:24) |
Надо выделить определенные числа месяца (для примера праздники и выходные). как сделать чтобы они стали толстыми (bold). Код : unsigned int bolddays[4] = {1,2,7,25}; MonthCalendar1->BoldDays(bolddays,3,MonthBoldInfo); не делает 1,2.. числа толстыми. | |
Георгий (24-01-2003 07:15:23) | |
Владимир — видать у Borland опять что-то не работает: в обработчике события GetMonthInfo есть параметр (передаваемые по ссылке) MonthBoldInfo — это 32-х битное число, каздый бит которого указывает надоли соответствующий ему день (число) писать жирным шрифтом: если MonthBoldInfo=3; то 1 и 2 число пишутся жирным шрифтом а если MonthBoldInfo=1; то 1 число — жирное так вот — MonthCalendar1->BoldDays(bolddays,3,MonthBoldInfo); — видать должна была и устанавливать эти биты, но она их не устанавливает — можно убедиться в пошаговой отладке. Аналогичная сложность была в Borland C++ 3.1, но там она лечилась настройками компилятора, а здесь наверное придётся делать свою функцию, которая устанавливает нужные биты в переменной MonthBoldInfo. | |
Владимир (24-01-2003 14:52:41) | |
Биты то выставляются, а вот число пишется как и все остальные не жирным шрифтом
| |
Георгий (24-01-2003 17:40:17) | |
А у меня как раз в битах дело было! После их установки "вручную" числа с этим битом стали чуть толше ;-] Не думал, что тут 2 глюка с Borland`ом. | |
Владимир (24-01-2003 23:42:06) | |
Все работает, просто help с example составляли Кривые Руки. Должно быть так: void __fastcall TForm1::MonthCalendar1GetMonthInfo(TObject *Sender, DWORD Month, DWORD &MonthBoldInfo) { unsigned int bolddays[4] = {1,2,7,25}; MonthCalendar1->BoldDays(bolddays,3, (unsigned &)MonthBoldInfo); } и все работает. | |
Георгий (26-01-2003 06:17:43) | |
т.е. в функцию BoldDays попадала КОПИЯ MonthBoldInfo блин — я это "лечил" настройками компилятора
|