马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
CImage nImage;
nImage.Load(_T("D:\\bb\\tu\\li1.jpg")); //载入文件图像
HBITMAP hBitmap = nImage.Detach(); //转换成HBITMAP
//位图与CImage对象相分离
mypicture.SetBitmap(hBitmap); //在picture控件中显示
int height = nImage.GetHeight();//获取当前图像的高度
我的问题:在执行 int height = nImage.GetHeight()时出现问题
问题出在这一行 HBITMAP hBitmap = nImage.Detach(); 。当你调用 Detach 方法时,这会分离 CImage 对象和它的位图。也就是说, CImage 对象不再拥有这个位图,所以你不能再用它来获取高度。
解决方法是,在你调用 Detach 方法之前获取高度。以下是修改后的代码:
CImage nImage;
nImage.Load(_T("D:\\bb\\tu\\li1.jpg")); //载入文件图像
int height = nImage.GetHeight(); //获取当前图像的高度
HBITMAP hBitmap = nImage.Detach(); //转换成HBITMAP
//位图与CImage对象相分离
mypicture.SetBitmap(hBitmap); //在picture控件中显示
这样,你就可以在分离位图之前,先获取图像的高度了。
|