Вниз
Скачать: CL | DM;

Анимация без мерцания   Найти похожие ветки 

 
xxxXXxx   (2003-10-23 15:25) [0]

Есть код вида:

for j:=0 to maxY-1 do
begin
for i:=0 to maxX-1 do
begin
col := ...
//рисуем на канве точку
Image1.Canvas.Pixels[i,j] := col;
end;
// для того, чтобы отображалась отрисованная строка изображения
Application.ProcessMessages;
end;

Возникает проблема - при отрисовке картинки происходит мерцание изображения. Как этого избежать?
Попытки использовать SwapBuffers(DC) внутри цикла , где DC=GetDC(Form1.Handle) - устанавливал при создании форму не привели к положительному результату, может, что не так делал?
Помогите, пожалуйста.


 
N169   (2003-10-23 16:04) [1]

Control.DoubleBuffered:=True;
где Control - контрол, "на котором лежит" картинка.
Напр., Form1, если на форме, или Panel1, если на панели и т.п.


 
xxxXXxx   (2003-10-23 17:04) [2]

спасибо, работает :)


 
xxxXXxx   (2003-10-23 17:20) [3]

в вышеприведённом куске кода надо непосредственно перед Application.ProcessMessages;
поставить SwapBuffers( DC );
где DC := GetDC(Handle);



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.016 c
4-99825
Дубинин Алексей
2003-11-03 21:46
2003.12.30
Как получить имя исполняемого файла зная его Handle


3-99504
Denisiy
2003-12-04 12:30
2003.12.30
Странная вещь в работе с таблицей через TTable.... не понимаю...


8-99648
Илья
2003-08-26 12:05
2003.12.30
Надо программу


3-99431
Evyshka
2003-12-08 08:49
2003.12.30
Проблема с внесением русских букв


14-99706
konstantinov
2003-12-09 01:33
2003.12.30
Глючит интернет




   Наверх