Delphi Clipboard 截图后将图片数据复制到剪贴板


本文整理自网络,侵删。

 今天需要用到一个功能。就是截图后,将图片数据复制到剪贴板。
然后到测试的时候,发现经常出现无法访问的问题。
然后通过一顿盲测,发现在调用前加上  clipboard.open; 就可以。先打开,然后就能设置了。

 

uses clipbrd;

 

procedure TfrmUploadPic.GetScreenPic;
var
  bmp : TBitmap;
  can : TCanvas;
  dc: HDC;
begin
  Clipboard.Clear;
  Clipboard.Open;
  bmp := TBitmap.Create; 
  bmp.Width := Screen.Width;
  bmp.Height := Screen.Height; 
  dc := GetDC(0); 
  can := TCanvas.Create;
  can.Handle := dc;
  bmp.Canvas.CopyRect(Rect(0,0,Screen.Width,Screen.Height),can,Rect(0,0,Screen.Width,Screen.Height));
//  Clipboard.Assign(bmp);
  Clipboard.SetAsHandle(CF_BITMAP,bmp.Handle);
  can.Free;
  ReleaseDC(0,dc);
end;

相关阅读 >>

Delphi 删除动态数组的指定元素

Delphi firedac,ado性能测试

Delphi webbrowser getelementbyid().innerhtml与getelementbyid().value的区别

Delphi 生成不重复数字随机码

Delphi mscomm 比较完整的用法例子

Delphi idhttp解决获取utf-8网页中文乱码问题

Delphi cb_addstring 与lb_addstring的区别?

Delphi android使用idhttp.get抓取https(ssl)文件

Delphi 禁止alt+f4关闭

Delphi获取星期函数

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...