Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

Как избавится мерцаний....

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование
Предыдущая тема :: Следующая тема  
Автор Сообщение
Roman_2002



Зарегистрирован: 21.05.2002
Сообщения: 56
Откуда: Львов

СообщениеДобавлено: Пт Май 17 2002 14:20    Заголовок сообщения: Как избавится мерцаний.... Ответить с цитатой

Ситуация такова:
Когда я делаю принудительную перерисовку объекта TPaintBox, повляется нежелательный эффект, при котром некотора часть изобоажения начинает мерцать.
Как мзбавится мерцыания? Програмирую на С++Builder 5
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
adr
Гость





СообщениеДобавлено: Сб Май 18 2002 10:52    Заголовок сообщения: Re: Как избавится мерцаний.... Ответить с цитатой

Тут вопрос как именно и с какой частотой ты делаешь перерисовку.
Если ты используешь метод Repaint, то попробуй заменить его на Invalidate, который перерисовывает не мгновенно, но ставит сообшение в очередь.
Вернуться к началу
Roman_2002



Зарегистрирован: 21.05.2002
Сообщения: 56
Откуда: Львов

СообщениеДобавлено: Пн Май 20 2002 09:27    Заголовок сообщения: Re: Как избавится мерцаний.... Ответить с цитатой

Перерисовка с интервалом 1 сек +/- 100 мс.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Roman_2002



Зарегистрирован: 21.05.2002
Сообщения: 56
Откуда: Львов

СообщениеДобавлено: Пн Май 20 2002 11:34    Заголовок сообщения: Re: Как избавится мерцаний.... Ответить с цитатой

Ни черта не помогает замена Repaint Invalidate
Мерцает как мерцало...
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
adr
Гость





СообщениеДобавлено: Пн Май 20 2002 16:08    Заголовок сообщения: Re: Как избавится мерцаний.... Ответить с цитатой

>>Ни черта не помогает замена Repaint Invalidate
>>Мерцает как мерцало...

можно попробровать такой метод:
при инициализации порождаем в памяти
объект TBitmap и
задаем ему размеры как у PaintBox-а.
После этого вместо того чтобы рисовать
на Canvas-e PaintBox-a рисуем на Canvas-e Bitmap-a,
а затем методом CopyRect (у TCanvas) копируем Canvas Bitmap-a на Canvas PaintBox-a
Вернуться к началу
Roman_2002



Зарегистрирован: 21.05.2002
Сообщения: 56
Откуда: Львов

СообщениеДобавлено: Пн Май 20 2002 17:13    Заголовок сообщения: Re: Как избавится мерцаний.... Ответить с цитатой

Вот так проходит
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Roman_2002



Зарегистрирован: 21.05.2002
Сообщения: 56
Откуда: Львов

СообщениеДобавлено: Пн Май 20 2002 17:18    Заголовок сообщения: Re: Как избавится мерцаний.... Ответить с цитатой

И еще проходит такой номер (очень простой)
у у формы есть такое свойство DoubleBuffered.
Для нормальной прорисовки, как оказалось 5 мин тому, достаточно поставить в true.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
adr
Гость





СообщениеДобавлено: Пн Май 20 2002 17:31    Заголовок сообщения: Re: Как избавится мерцаний.... Ответить с цитатой

>>И еще проходит такой номер (очень простой)
>>у у формы есть такое свойство DoubleBuffered.
>>Для нормальной прорисовки, как оказалось 5 мин тому, достаточно поставить в true.


Я так понимаю, что это свойство появилось в
5-ом Builder'e; в 4-ом (в котором я работаю)
его нет Sad
Вернуться к началу
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...