Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

как вложить компонент в ячейку DrawGrid? [D7, WinXP]


alexrayne ©   (2009-09-22 20:21:00) 

сделал свой графический компонент (рулер), и хочу засунуть его в ячейку TDrawGridы.
попробовал сделать так:
1) установил хозяином рулера сетку в которой он должен рисоваться
Ruler.Parent := Grid;
2) в обработчике DrawCell устанавливаю границы рулера по размерам ячейки, и перерисовываю его
 ruler.SetBounds(rect);
 ruler.repaint;

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

как быть? отзовитесь кто делал


Йожих   (2009-09-23 16:07:00) [1]

Если контрол от TGraphicControl, установи ему ControlStyle := ControlStype - [csOpaque], и, соответствено, в Paint()  не рисуй там, где не надо фона; а если от TWinControl, то, хоть теоретически и можно, но практически - придется лезть очень-очень глубоко в дебри, то есть, лучше не нужно.


alexrayne   (2009-09-22 21:10:00) [2]

заставил ето работать с помощью метода PaintTo, только сначала надо сделать компонент невидимым.
осталось понять как корректно заставить компонент незаполнять свой фон, а оставлять его как есть.


Наверх

Титульная страница Поиск, карта сайта Написать письмо