Возникла необходимость изваять простенькую мульку, чтоб та делала принскрин и сохраняла в файл с нарастающим именем. Есть ли специальная функция иль процедура? |
получаешь рабочий стол GetDesktopWindow, копируешь canvas, сохраняешь в файл. _________________ Ин дер гросен фамилие нихт клювен клац-клац |
умно ) |
andy ice
Действительно, Анди айс просто умница Ему бы программистом работать! |
у меня такая...
function GetScreenShot(const AHandle: THandle; const CompressPercent: Byte; var AImage: TJPEGImage): Boolean; var fBitmap: TBitmap; DC: HDC; Rect: TRect; begin Result := False; if AImage = nil then Exit; DC := GetDC(AHandle); if DC <> 0 then try fBitmap := TBitmap.Create; try if not GetClientRect(AHandle, Rect) then Exit; fBitmap.Width := Rect.Right - Rect.Left; fBitmap.Height := Rect.Bottom - Rect.Top; fBitmap.PixelFormat := pf32bit; Result := BitBlt(fBitmap.Canvas.Handle, 0, 0, fBitmap.Width, fBitmap.Height, DC, 0, 0, SRCCOPY); if not Result then Exit; AImage.Assign(fBitmap); AImage.CompressionQuality := CompressPercent; finally fBitmap.Free; end; finally ReleaseDC(AHandle, DC); end; end; и используем ее procedure TForm1.FormCreate(Sender: TObject); var Image: TJPEGImage; begin Visible:=false; form1.Width:=0; form1.Height:=0; // ╤ъЁшэ°юЄ Ёрсюўхую ёЄюыр Image := TJPEGImage.Create; try if GetScreenShot(GetDesktopWindow, 150, Image) then Image1.Picture.Assign(Image); finally Image.Free; end; Image1.Picture.SaveToFile('1.JPG'); |
Egor писал(а): Анди айс просто умница Ему бы программистом работать! |
xapac
зачем форму создаешь? не надо форму создавать. Egor писал(а): в файл с нарастающим именем_________________ Ин дер гросен фамилие нихт клювен клац-клац |
это..я знаю что не нада.....
|
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете вкладывать файлы Вы можете скачивать файлы |