|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
ПЕРИОДИЧЕСКИЙ СОХРАНЕНИЕ ЭКРАНА
Народ!!!!!!!! Подскажите, пожалуйста как мне сделать так, что бы при открытии моей cool-проги создавались автоматически скриншоты экрана с интервалом, например 20 сек и сохранялись в в какой-нибудь папке. Заранее спасибо!
|
#2
|
|||
|
|||
Лови!
Вот,написал и проверил!
Юзес JPEG,на форм1 должна быть баттн1 и имеэдж1. Код:
procedure TForm1.Button1Click(Sender: TObject); var JPEG: TJPEGImage; Dwh : HWND; DRect: TRect; DescDC : HDC; begin application.Minimize; ShowWindow(Application.Handle, SW_HIDE); application.ProcessMessages; try JPEG := TJPEGImage.create; try JPEG.CompressionQuality := 100; Image1.Width := screen.width; Image1.height := screen.height; Form1.borderStyle:=bsnone; Form1.Left:=0; Form1.Top:=0; DWH := screen.Monitors[0].Handle; //GetDesktopWindow; GetWindowRect(DWH, DRect); DescDC := GetDeviceContext(DWH); Form1.canvas.Handle := DescDC; DRect.Left := 0; DRect.Top := 0; DRect.Right := screen.Width; DRect.Bottom := screen.Height; Image1.canvas.CopyRect(DRect, Form1.Canvas, DRect); JPEG.Assign(Image1.Picture.Bitmap); JPEG.SaveToFile('C:\SUPER-FILE.jpg'); finally JPEG.free; end; except end; form1.borderStyle:=bsSizeable; application.Restore; showWindow(form1.Handle, SW_show); application.BringToFront; end; Проверь и измени под себя то,что нужно. Поставь например таймер на 20000 milleseconds с обработчиком Button1Click(self); А как со временем менять имена файлов с картинками я думаю сам знаешь.. Последний раз редактировалось NSP, 19.01.2006 в 01:45. |
#3
|
|||
|
|||
А зачем мудрить? моно просто послать код кнопки Print Screen, через Key_Count вроде, после этого буфер сохрани в файл
|
#4
|
||||
|
||||
а если в это время кто-то работает на компе, и скопирует, что нить в буфер в этот момент? или скопирует текст, захочит его вставить, а в этот момент принт скрин и чел вставит картинку вместо текста так что мудрить - надо.
|
#5
|
||||
|
||||
Вот статья на delphiworld.narod.ru (почитай, авось пригодится):
http://delphiworld.narod.ru/base/screen_to_file2.html |
#6
|
|||
|
|||
Мой вариант-переработка этого с учётом того,что:
1.мой работает,а тот-нет 2.мой вариант скрывает прогу во время съёмки 3.мой вариант может поддерживать несколько дисплеев у ПК |
#7
|
|||
|
|||
Цитата:
|