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

Проблемы с компонентом в компоненте   Найти похожие ветки 

 
Oxy ©   (2003-06-19 11:17) [0]

Такая трабла. Есть компонент, производный от TWinControl и на нем есть другой компонент TListView. Я перекрываю метод paint TWinControl-а и когда мне надо вызываю его для перерисовки компонента. При этом ListView затирается. Сразу после этого я делаю ему
ListView.Repaint;
ListView.Refresh;
но он все равно отрисовывается не полностью. Как его заставить отрисоваться полностью?


 
Юрий Зотов ©   (2003-06-19 11:23) [1]

Уточните - зачем нужна принудительная перерисовка? Разве само не перерисовывается? И еще - кто является Parent"ом у ListView? И еще - какие стили выставлены у TWinControl, есть ли среди них WS_CLIPCHILDREN?


 
Oxy ©   (2003-06-19 15:04) [2]

Уточните - зачем нужна принудительная перерисовка? Разве само не перерисовывается?

Не перерисовывается полностью. Только если сделать ему invalidate перерисовывается. Но меня invalidate не устраивает. При нем все мигает так как там автоматически стирается фон перед перерисовкой, а компонент у меня очень большой.

И еще - кто является Parent"ом у ListView? И еще - какие стили выставлены у TWinControl, есть ли среди них WS_CLIPCHILDREN?

Парент TCustomControl. А насчет стилей я специально не разбирался еще. Все по дефолту.


 
Юрий Зотов ©   (2003-06-19 15:32) [3]

Так TCustomControl или TWinControl все-таки?
:о)

А стиль WS_CLIPCHILDREN должен быть выставлен. Заместите CreateParams. Похоже, из-за этого и затирается ListView.


 
reonid ©   (2003-06-19 15:42) [4]

Или же в конструкторе
ControlStyle := ControlStyle + [csAcceptsControls];


 
Oxy ©   (2003-06-19 16:15) [5]

Так TCustomControl или TWinControl все-таки?

TCustomControl, в нем впервые канва появилась.

А стиль WS_CLIPCHILDREN должен быть выставлен. Заместите CreateParams. Похоже, из-за этого и затирается ListView.

Ок, попробую, спасибо


 
KSergey ©   (2003-06-19 16:34) [6]

> Oxy © (19.06.03 16:15)
> TCustomControl, в нем впервые канва появилась.

Канва-то появилась, но ун не может быть парентом ;) Так что уточните.


 
MBo ©   (2003-06-19 16:45) [7]

>KSergey
может, это же наследник TWinControl, а не TGraphicControl


 
KSergey ©   (2003-06-19 16:57) [8]

> MBo © (19.06.03 16:45)

Опа, извиняюсь, не вник как обычно


 
Oxy ©   (2003-06-20 09:32) [9]

Короче поставил WS_CLIPCHILDREN и все заработало. Спасибо.



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

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



Память: 0.47 MB
Время: 0.01 c
3-97501
Igor Mish
2003-06-05 10:14
2003.06.30
Шрифты в ShowMessage


1-97719
DDDeN
2003-06-17 16:07
2003.06.30
Добавление строки в TLabel


1-97725
VISA
2003-06-18 14:44
2003.06.30
Hint


9-97467
Nevel
2003-01-16 05:41
2003.06.30
Людт помогите - НУЖНА СРОЧНО ИГРА


1-97600
Maxx
2003-06-18 14:10
2003.06.30
Как определить над каким компонентом на форме нажата левая кнопка




   Наверх