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

Вниз

помогите оптимизировать код   Найти похожие ветки 

 
Dennis S   (2005-05-03 11:37) [0]

комп 2,4GHz - но при выполнении кода на секунду притормаживает.
При движении мыши, курсор замирает на секунду на месте...
Как этого избежать? Может с кодом что-то не так?
Копирует экран в ВМР, потом конвертит в JPEG и сохраняет...
Что можно сделать, чтобы процесс работы программы не был так заметен??
=======================

procedure TForm1.T1Timer(Sender: TObject);
var
bmp: TBitmap;
jp: TJpegImage;
DC: HDC;
S,S1,Sx: String;
D: String;
begin
       T1.Interval := StrToInt(mmTIME.Lines[1]);
       if T1.Interval <> 1000 then begin
       {---//---}
       end;
       bmp := TBitmap.Create;
       jp := TJpegImage.Create;
       bmp.Height := Screen.Height;
       bmp.Width := Screen.Width;
       DC:=GetDC(0);
       BitBlt(bmp.Canvas.Handle, 0, 0, Screen.Width,
         Screen.Height,DC, 0, 0, SRCCOPY);
       jp.Assign(bmp);
       jp.CompressionQuality := 20;
       jp.Compress;
       S := mmTIME.Lines[3];
       S1 := mmTIME.Lines[5];
       Sx := mmTIME.Lines[7];
       if S1 = "1" then begin
         x := x + 1;
         D := DateToStr(Date);
         Sx := Sx + D +"_screen_"+ IntToStr(x) +"_.jpg";
         jp.SaveToFile(Sx);
       end;
       jp.SaveToFile(S);

       ReleaseDC(0, DC);
       bmp.Free;
       jp.Free;
end;


 
@!!ex   (2005-05-03 12:34) [1]

ДИНАМИЧЕСКОЕ ВЫДЕЛЕНИЕ ПАМЯТИ ОДНА ИЗ САМЫХ МЕДЛЕННЫХ ОПЕРАЦИЙ!!!
Создавай объекты ОДИН раз! Будет в разы быстрее.



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

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

Наверх




Память: 0.47 MB
Время: 0.06 c
14-1124090467
Kerk
2005-08-15 11:21
2005.09.11
demo :)


1-1124525245
slaga
2005-08-20 12:07
2005.09.11
Переопределение функций


10-1101905039
grigory
2004-12-01 15:43
2005.09.11
Как правильно получить доступ к св-ву GetProp?


4-1121948938
Bobby
2005-07-21 16:28
2005.09.11
Опять PE


14-1124273711
Экспериментатор
2005-08-17 14:15
2005.09.11
$(Delphi) - где присваивается значение этой переменной?