Вниз
Скачать: 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 вся ветка

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



Память: 0.45 MB
Время: 0.035 c
1-1124792531
TikTanik
2005-08-23 14:22
2005.09.11
Обьединение классов! :)


3-1122991719
vol
2005-08-02 18:08
2005.09.11
можно абдейт нескольких в одну строку?


14-1124274282
Дмитрий_Б
2005-08-17 14:24
2005.09.11
Навеяно недавней веткой


1-1124191188
Bombila
2005-08-16 15:19
2005.09.11
Как рисовать иконки с alpha-blend(ом)?


1-1124388046
Сергей Никонов
2005-08-18 22:00
2005.09.11
Перерисовки в FileListBox




   Наверх