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

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

как избежать мерцания при перерисовке?


aspen ©   (2002-12-03 13:06:00) 

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

procedure DrawBuffer();
var
center, i : integer;
begin
center := FormRecord.ImageDrawGrafic.Height div 2;
ScaleX := FormRecord.ImageDrawGrafic.Width div 500;
ScaleY := 1;
FormRecord.ImageDrawGrafic.Canvas.CopyMode := cmSrcCopy;
FormRecord.ImageDrawGrafic.Canvas.Rectangle(0,0,FormRecord.ImageDrawGrafic.Width, FormRecord.ImageDrawGrafic.Height);
FormRecord.ImageDrawGrafic.Canvas.MoveTo(0, center);
for i:=0 to 500 do
begin
FormRecord.ImageDrawGrafic.Canvas.LineTo(i*ScaleX, FormRecord.ImageDrawGrafic.Height-Buffer[0,i]*ScaleY);
end;
end;


MBo   (2002-12-03 13:18:00) [1]

Doublebuffered:=True для формы (или Parent-а Image, если он лежит не на форме)


Наверх

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