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程序将自身可执行文件拷贝到u盘的代码

Delphi string.split 按照任意字符串分割语句

Delphi10.3通过rest单元使类和json数据互相转换

使用Delphi启动和关闭外部应用程序

Delphi 常用控件属性

Delphi 网上获取北京时间验证码识别之中值滤波

Delphi中判断一个字符的位置在字符串开头或者末尾

Delphi从内存流加载图片

Delphi 用firedac处理sqlite的日期型

Delphi读写文本文件

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



打赏

取消

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

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

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

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

评论

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