Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.27;
Скачать: CL | DM;

Вниз

Как незаметно перерисовать форму?   Найти похожие ветки 

 
Helg ©   (2002-11-12 19:44) [0]

Подскажите, как нормальные люди поступают в таких случаях: Я рисую на Form1.Canvas трехмерную картинку, потом меняю параметры картинки, стираю старую - RectAngle(ClipRect) и рисую новую. При этом в момент очистки и перерисовки, естественно проскакивают блики и мигание. Как бы сделать так, чтобы момент перерисовки на экране не отображался?


 
Song ©   (2002-11-12 21:06) [1]

Способы есть, но у Вас сиуация очень нестандартная.
Попробуйте LockUpdateWindow().


 
MBo ©   (2002-11-13 05:23) [2]

Рисуют на битмапе, затем его BitBlt на форму


 
Song ©   (2002-11-13 09:20) [3]

>>Рисуют на битмапе, затем его BitBlt на форму
Это реализация DoubleBuffered. Может им можно обойтись?


 
AlexT1000   (2002-11-13 12:06) [4]

вставляешь в форму

procedure WMErase(var msg:TMessage); message WM_ERASEBKGND;


procedure TFormImage.WMErase(var msg: TMessage);
begin
msg.Result := 1;
end;


 
Helg ©   (2002-11-13 20:25) [5]

Отлично, BitBlt сработал. То, что доктор прописал. У меня как раз BitMap нашелся не задействованный в этот момент. Остальное пока не пробовал.



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

Текущий архив: 2003.02.27;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.014 c
1-87487
Process Killer
2003-02-14 16:57
2003.02.27
Delphi and HTML


3-87341
ArtemB
2003-02-11 08:44
2003.02.27
Сравнение и выборка


4-87739
Terrible
2003-01-13 12:11
2003.02.27
Послать Message сервису или консольному приложению


1-87397
Lesha
2003-02-17 09:24
2003.02.27
Альтернатива TChart


6-87600
Кокандокало
2003-01-05 20:29
2003.02.27
Обработка ошибки сокета..