Вниз
Скачать: CL | DM;

Написание компонентов   Найти похожие ветки 

 
JS   (2003-04-22 01:54) [0]

Есть некий компонент, который может становиться родителем для других компонентов (как, например, TPanel). Каким образом этот компонент должен получить уведомление о перерисовке, при изменении размера или позиции какого-либо из своих дочерних к-ов?
Т.е. проблема в том, что, например, когда дочерний к-т изменяет положение, родитель не перерисовывает себя и остается след от предыдущего месторасположения дочернего к-та.

Зараенне благодарен за ответы.


 
jack128 ©   (2003-04-22 14:13) [1]

А может родителя принудительно перересовывать?

if (Parent <> nil) and (Parent is Tcontrol) then TControl(Parent).Invalidate;


 
REA ©   (2003-04-22 14:22) [2]

Оно само должно на уровне Windows - когда окно смещается (если компонент оконный), то посылается WM_PAINT с нужным регионом перерисовки. Если не оконный, в дебри не лез, но тоже автоматом как-то должно.


 
MalkoLinge ©   (2003-04-22 15:55) [3]


> jack128 © (22.04.03 14:13)
> А может родителя принудительно перересовывать?
>
> if (Parent <> nil) and (Parent is Tcontrol) then TControl(Parent).Invalidate;
"
Дело в том, что родитель ВСЕГДА TwinControl.. поэтому этот код практичсеки не имеет смысла.. Что касаеться принудительной прорисовки, то лично у меня такой проблемы вообще не возникало..Нет желания рассказать по-подробнее о проблеме ?



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.012 c
14-12920
DeMoN-777
2003-04-17 21:22
2003.05.05
Заметили новую звёздочку


7-12951
AFrolov
2003-03-13 19:01
2003.05.05
Как убить чужое приложение (как в диспетчере задач)


1-12736
Seldon
2003-04-22 21:32
2003.05.05
Как спрятать каретку в RichEdit?


1-12797
Cranium
2003-04-21 15:37
2003.05.05
Как в событии GridDrawColumnCell определить какой столбец рисуетс


4-12964
Chubais
2003-01-31 14:41
2003.05.05
глюк TDBGrid в W2K/XP




   Наверх