Вниз
Скачать: 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
14-97794
RedFox
2003-06-14 19:29
2003.06.30
Как скрыть главную форму при запуске программы


14-97830
Bboy
2003-06-12 10:25
2003.06.30
Вот бы поменять все буквы с больших на маленькие...


1-97709
0rg
2003-06-17 20:49
2003.06.30
Алгоритм для часов


6-97768
wQH
2003-04-24 08:28
2003.06.30
TIdDNSresolver


14-97831
tos
2003-06-11 02:25
2003.06.30
как проинсталить компонент




   Наверх