Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Своя отрисовка TStringGrid (http://forum.oszone.net/showthread.php?t=30294)

Prisoner 15-09-2003 17:25 208113

Событие OnDrawCell реагирует на необходимость отрисовки ячеек если свойство DefaultDraw=False (тогда задача отрисовки всей таблицы ложится на программиста). Однако у меня не ладится вся работа, толи я глючу, толи... В общем странное дело с определением типа ячеек ([gdFixed],[gdSelected],[gdFocused]), да и инфа не сохраняется... По сему вопрос - как выкрасить различные ячейки в различные цвета с сохранением информации в оных ячейках (то есть попросту добавить фон ячеек) в стиле качалки ReGet (ну к примеру). Приведете кусочек кода - буду рад, линку на компонент помогающий решить проблему - очень рад.

Abell2000 15-09-2003 19:00 208114

DefaultDrawing не обязательно должен быть false для перерисовки ячейки, например если тебе надо только изменить ее цвет то оставь true, будет меньше проблем с отрисовкой fixed & focused ячеек, а делается все просто:
в onDrawCell
Canvas->Brush->Color=clRed;
Canvas->FillRect(ARect);
Canvas->TextOut(ARect.Left+2,ARect.Top+2,Cell[ACol][ARow]);
можно вместо TextOut использовать TextRect, только тогда brush->Style=bsClear;

Prisoner 16-09-2003 19:40 208115

Спасибо. Все заработало. Пришлось правда под Дельфу (сразу не оговорился, что под нее нать) кое что приспособить, но да это ерунда. Еще раз сыпасиба!

Abell2000 17-09-2003 05:16 208116

Пожалуйста.


Время: 06:46.

Время: 06:46.
© OSzone.net 2001-