本文主要是介绍将位图复制到剪切板,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
CBitmap bmp;
.................//其他操作 ,bmp是一个依赖于设备的位图,DDB !
BOOL ret = ::OpenClipboard(NULL);
if (ret){
::EmptyClipboard();
HANDLE hadndle = ::SetClipboardData(CF_BITMAP, bmp.GetSafeHandle()) ; //CF_BITMAP支持DDB
if (hadndle)
{
//注意调用detach()函数。这是非常重要的,因为GDI(图形设备接口)对象已经转移到了剪贴板中了
bmp.Detach();
}
:CloseClipboard();
}
//ATL::Cimage 变量无法直接导入剪切板的原因: 应该是内部的数据是DIB .
//简单的解决办法是将位图绘制到DDB,然后再导入剪切板。
这篇关于将位图复制到剪切板的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!