![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
как убрать мерцание с помощью двойной буферизции [D6, WinXP]
crizis © (2004-07-24 12:54:00)Здравствуйте.
У меня есть Image. на нем я методами MoveTo LineTo рисую некое изображение.
При изменении размера Image получаю сильное мерцание. Я пробывал с этим боротся через буферизацию изображения, тоесть создавал переменную класса Tbitmap, и всю прорисовку проводить в ней, а только потом накладывать уже готовое изображение на канву, но мерцание все равно осталось.
В инете нашел инфу, что с этим можно борося с помощью двойной буферизации, но ничего конкретного о ней не знаю..
собственно, сабж...
-=IVA=- (2004-08-05 16:15:00) [1]Огромное Кулясищще ©
сорри, не заметил , что ты уже написал это ;)
-=IVA=- (2004-08-05 16:14:00) [2]Form1.DoubleBuffered:=True;
Огромное Кулясищще (2004-07-24 16:35:00) [3]2 crizis (24.07.04 12:54):
Как именно происходит изменение размеров TImage и как всё мерцает? Ты либо один раз меняешь размер TImage и получаешь одно мерцание, либо размеры меняются динамически, возможно мышкой, и получаешь множество мерцаний?
Теперь по сути. Если ты рисуешь на канве, то может быть попробуй TPaintBox. Если нужно выводить изображение из растра, то TBitmap всегда придёт на помощь.
В принципе, двойная буфферизация как таковая - термин для игр, когда изображение выводится постоянно. С TPaintBox можно прекрасно работать, если рисовать в OnPaint. Это значит, что весь код рисования расположен в обработчике именно этого события, а когда нужно что-то нарисовать, то вызывай TPaintBox.Invalidate.
Ну а если по-простому и ты не хочешь со всем этим связываться, то поставь у формы DoubleBuffered := True в OnCreate; Если TImage расположен на панели, то ставь не у формы, а у панели.
Огромное Кулясищще (2004-07-24 16:28:00) [4]2 Pa5ha (24.07.04 14:59) [2]:
Ты явно промахнулся с ответом.
Pa5ha (2004-07-24 14:59:00) [5]Stretch:=true;
AutoSize:=true;
crizis (2004-07-24 13:40:00) [6]Удалено модератором
Примечание: Создание пустых сообщений