MFC对话框 CImage Load图片后hBitmap是无法计算的值???为神马啊啊啊

//TODO:在此添加控件通知处理程序代码CStringImagePathName;CStringstrFilter;strFilter="bmp位图文件|*.bmp|J... // TODO: 在此添加控件通知处理程序代码
CString ImagePathName;
CString strFilter;
strFilter = "bmp位图文件|*.bmp|JPEG图像文件|*.jpg|GIF图像文件|*.gif|PNG图像文件|*.png||";//图像过滤器
CFileDialog dlg(TRUE,NULL,NULL,NULL,strFilter);//创建开打图像的对话框
if(dlg.DoModal()==IDOK)
{
ImagePathName=dlg.GetPathName();//获取图像文件名
}

img.Load(ImagePathName);
hBitmap=img.Detach(); // 获得位图句柄 用以转换
展开
 我来答
归悦欣cf
2015-04-09 · TA获得超过1444个赞
知道大有可为答主
回答量:4250
采纳率:59%
帮助的人:1329万
展开全部
那反过来问为什么要计算hBitmap的值呢,一般来说句柄用于标识某一资源,友比如窗口句柄,一般都是由资源被装载或生成后才生成的,因此无法预先进行计算。
追问
实在惭愧!那么我这样加载图片是否算得成功了呢?
追答
一般来说,加载成功通过查看返回的句柄值就知道,如果返回的句柄值是0,表示加载不成功。但是如果调用Detach函数,那么你加载的图像资源已经与img对象分离,之后利用img来操作加载的位图资源应该是无效的,但是通过返回的句柄操作图像资源是否可以就不知道了,只能自己试一试看。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式