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

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

KOLTabControl глюкаво прорсовывается. что делать ?


ABM ©   (2003-01-27 13:23:00) 

KOLTabControl глюкаво прорсовывается. Размазываются компоненты (TreeView вообще не видно, Splitter тоже и т.д.) на страничках.
В чем может быть причина ?


Kladov   (2003-01-29 19:59:00) [1]

Проблема - в постоянной перерисовке, из-за чего все начинает жутко тормозить. Возможно, просто где-то упущен ValidateRect, но надо копать.


SPeller   (2003-01-29 16:13:00) [2]


> Kladov (27.01.03 21:17)
> Кстати, никто так и не захотел попробовать решить проблему
> DoubleBuffered/Transparent?

А можно напомнить конкретные проблемы, требующие решения? Сейчас каникулы, времени больше, может чего посмотрю.


ABM   (2003-01-29 15:07:00) [3]

Нет Transparent/DoubleBuffered не использовал.
Вот как все выглядит на самом деле:
Я пытаюсь прорисовать форму, на которую наложен регион (делаю рамку с BMP).
BMP-шку я держу в памяти а в OnPaint-е формы рисую ее на канве формы: Bmp.Draw(DC,0,0);
Мерцание исчезает если определить обработчик события формы OnEraseBkgnd(), даже если там нет никаких действий касетельных прорисовки - просто указатель на него не пустой. Но тогда не все контролы на форме прорисовываются правильно - например на TabControl-е не отображается RichEdit, TabControl не перерисовывает себя правильно (остаются следы от перекрывающих форм). Может есть способ заставить форму не вытирать свой фон не назначая обработчика OnEraseBkgnd ?
Пробовал в OnMessage обрабатать WM_ERASEBKGND
если его не слать дальше, то мерцаеия нет, но прорисовка RichEdit\TabControl страдает, если слать - то все прорисовываются хорошо, но форма (те области, где рисуется BMP) сильно мерцает.

Буду очень признателен за советы ! Жду очень !<\b>


Kladov   (2003-01-27 21:17:00) [4]

Не наблюдал такого эффекта. Только что проделал. Не используется ли Transparent/DoubleBuffered ? Эта часть все еще проблемна.

Кстати, никто так и не захотел попробовать решить проблему DoubleBuffered/Transparent?


ABM   (2003-01-27 19:32:00) [5]

Кладу на несколько закладок TKolTreeView, Splitter и KolReachEdit.
Вот ети то KolReachEditы, даже если невидиые, как-то влияют на прорисовку TabControl"а. Они как бы "накрывают" его сверху. Что ж делать ? Если убрать KolReachEditы, то все выглядит нормально и безошибочно.


ABM   (2003-01-27 19:30:00) [6]

Кладу на несколько закладок TKolTreeView, Splitter и KolReachEdit.
Вот ети то KolReachEditы, даже если невидиые, как-то влияют на прорисовку TabControl"а. Они как бы "накрывают" его сверху. Что ж делать ?


Kladov   (2003-01-27 17:24:00) [7]

Так же видно, как и без TabControl. Осталось выяснить, что вы с ним такое делаете, что оно так себя у вас ведет. И как оно себя у вас ведет без TabControl"а.


Наверх

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