海信家电”换帅 “ 高玉玲接替代慧忠出任新任董事长
2024-11-22
procedure TForm1.Timer1Timer(Sender:TObject);//抓取屏幕,并保存到Image控件中 var Fullscreen:Tbitmap; FullscreenCanvas:TCanvas; dc:HDC; begin Fullscreen:=TBitmap.Create; //创建一个BITMAP来存放图象 Fullscreen.Width:=screen.width; Fullscreen.Height:=screen.Height; DC:=GetDC(0); //取得屏幕的DC,参数0指的是屏幕 FullscreenCanvas:=TCanvas.Create; //创建一个CANVAS对象 FullscreenCanvas.Handle:=DC; Fullscreen.Canvas.CopyRect(Rect(0,0,screen.Width,screen.Height), fullscreenCanvas,Rect(0,0,Screen.Width,Screen.Height)); //把整个屏幕复制到BITMAP中 FullscreenCanvas.Free; //释放CANVAS对象 ReleaseDC(0,DC); //释放DC //******************************* image1.picture.Bitmap:=fullscreen; //拷贝下的图象赋给IMAGE对象 image1.Width:=fullscreen.Width; image1.Height:=fullscreen.Height; fullscreen.free; //释放bitmap form1.WindowState:=wsNormal; //复原窗口状态 form1.show; //显示窗口 messagebeep(1); //BEEP叫一声,报告图象已经截取好了。 end; |
procedure TForm1.BtnStartClick(Sender:TObject); begin ScreenCapture1.start; //开始截图 end; //当截取屏幕成功时,此事件发生 procedure TForm1.ScreenCapture1Capture(Sender:TObject;Bitmap:TBitmap); begin //调整滚动窗口的大小以适应截获图像的大小 Scrollbox1.HorzScrollBar.Range:= Image1.width; Scrollbox1.VertScrollBar.Range:= Image1.height; end; procedure TForm1.FormCreate(Sender:TObject); begin //载入entntacp.dll文件 BtnStart.enabled:= ScreenCapture1.dllavailable; //显示版本信息 caption:= '屏幕抓图软件' + ScreenCapture1.version; end; //当没有足够的内存支持截取屏幕时,此事件发生 procedure TForm1.ScreenCapture1Error(Sender:TObject); begin MessageDlg('屏幕截取时发生一个错误!请关闭其他应用程序以获得更多内存资源.',mtError,[mbOK],0); end; //当用户按“Esc”键,即取消屏幕截取时,此事件发生 procedure TForm1.ScreenCapture1UserCancelled(Sender:TObject); begin MessageDlg('用户取消屏幕截取。',mtInformation,[mbOK],0); end; |
图1运行效果图 图2抓取图像后的效果图 |
评论 {{userinfo.comments}}
{{child.content}}
{{question.question}}
提交