![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | 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
|
|||
|
|||
|
Цитата:
|