您的位置:首页 > 编程语言 > Delphi

关于Delphi Clipboard 无法访问的问题 解决

2014-10-15 17:09 267 查看
今天需要用到一个功能。就是截图后,将图片数据复制到剪贴板。

然后到测试的时候,发现经常出现无法访问的问题。

然后通过一顿盲测,发现在调用前加上 clipboard.open; 就可以。先打开,然后就能设置了。

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;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: