|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
Медленный скриншот, как быстрее?
Привет!
В инете куча тем по созданию скриншотов, но все они построенны одинаково.. И все тормозят... Код:
procedure TNewThread.MakeScreenshot(); var DC:HDC; DeskTop: TCanvas; begin if(VisualCoordSetState > 0) then begin DeskTop := TCanvas.Create; try with DeskTop do Handle := GetWindowDC(GetDesktopWindow); with Form1.Image.Canvas do CopyRect(Rect(0, 0, Form1.Image.Width, Form1.Image.Height), DeskTop, Rect(MousePos.X, MousePos.Y, round(MousePos.X+Form1.Image.Width/6), round(MousePos.Y+Form1.Image.Height/6))) finally DeskTop.Free; end end; end; Я даже его запускаю одним потоком Код:
// В этом месте выполняется весь необходимый код. // ---------------------------------------------- Synchronize(MakeScreenShot); // ---------------------------------------------- // sleep не меньше 15мс обязателен Sleep(250); Подскажите другие способы? |
#3
|
||||
|
||||
|
#4
|
|||
|
|||
Спасибо за наводку, изучу эту тему!
Отпишусь |