Опять моргание
От: Molchalnik  
Дата: 04.08.09 15:32
Оценка:
Помогите, други, проект горит, репутация тоже.

Дано: Си билдер шестой.
Нечто вроде графического редактора в режиме увеличения. — большие квадратики, при нажатии мышкой меняют цвет.

две канвы на двух TImage — одна невидимая(буфер), другая видимая.

Формирую изображение в буфере и копирую на экран.

Проблема — моргает, "мигает" изображение, слегка дёргается, что раздражает (увы, клиента, а не меня )

Что делал:
Посмотрел Шамиса — попытался использовать Draw виесто CopyRect — эффект нулевой.

Посмотрел аналогичную тему здесь про дельфи — собрал рисование в событии OnPaint — моргает так часто, что изображения не видно.

Добавил флаг "изображение изменено" и проверку условия в OnPaint — онпаинт не включается вообще

Стал запускать OnPaint искусственно, с помощью Invalidate — работает, но моргает больше, чем раньше.

Убивать себя не хочется, клиента боязно, а комп я слишком люблю, чтобы стучать по нему тяжёлыми предметами.

В общем, помогите!!!
Re: Опять моргание
От: Сергей Савостин Украина  
Дата: 04.08.09 18:26
Оценка:
TWinControl::DoubleBuffered = true
и по идее не нужен второй канвас...
Re[2]: Опять моргание
От: Molchalnik  
Дата: 05.08.09 14:56
Оценка:
Здравствуйте, Сергей Савостин, Вы писали:

СС>TWinControl::DoubleBuffered = true

СС>и по идее не нужен второй канвас...

спасибки, работает )
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.