Como capturar tela via programação?
Como faço para capturar o que está na tela via programação ?
Quais (ou qual é) o comando Para fazer isso ?
Desde já agradeço :wink:
Quais (ou qual é) o comando Para fazer isso ?
Desde já agradeço :wink:
Cent_se
Curtidas 0
Respostas
Fabio.hc
18/06/2004
Tente assim:
Esta rotina a captura a tela e salva num jpg.
Esta rotina a captura a tela e salva num jpg.
uses JPEG; procedure TForm1.Button1Click(Sender: TObject); var nomeArq:string; ano, mes, dia, hor, min, seg, Mseg:word; begin try Image1.picture.Assign(CaptureScreenRect(Rect(0,0,Screen.Width,Screen.Height))); DecodeDateTime(Now,ano,mes,dia,hor,min,seg,mseg); nomeArq := IntToStr(ano)+FormatFloat(´00´,mes)+IntToStr(dia)+´-´+IntToStr(hor)+IntToStr(min)+IntToStr(seg); nomeArq := ´C:\Teste\´+nomeArq; BmpToJpg(image1.picture.Bitmap, nomeArq); except end; end; function CaptureScreenRect( ARect: TRect ): TBitmap; var ScreenDC: HDC; begin Result := TBitmap.Create; with Result, ARect do begin Width := Right - Left; Height := Bottom - Top; ScreenDC := GetDC( 0 ); try BitBlt( Canvas.Handle, 0, 0, Width, Height, ScreenDC, Left, Top, SRCCOPY ); finally ReleaseDC( 0, ScreenDC ); end; end; end; function BmpToJpg(cImage: tbitmap; nomeJpg:string): Boolean; var jp: TJpegImage; begin jp := TJpegImage.Create; try with jp do begin Assign(cImage); SaveToFile(nomeJpg+´.jpg´) end; finally jp.Free; end; end;
GOSTEI 0
Cent_se
18/06/2004
Valeu Fábio
GOSTEI 0
Mordred
18/06/2004
Tô usando o Delphi 7 e aqui não tem a unit JPG instalada... como eu faço pra instalar? :(
GOSTEI 0
Massuda
18/06/2004
Vem no CD de instalação do Delphi; procure por uma pasta/diretório com o nome Extras (acho que era isso).
GOSTEI 0