CImageList 与 CBitMap 的简单问题。

ydf 2000-06-19 03:42:00

请问各位高手:
  如果我想将CImageList 变量中的其中一个图像保存到 CBitMap 变量中,那么我应该怎样做?
  如果是将CBItMap 加到CImageList 中又应该怎样呢?

最好能提供源代码。

——————————解决问题后我将高分送上。

...全文
244 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
leslieshen 2001-10-29
  • 打赏
  • 举报
回复
good
geofee 2000-06-19
  • 打赏
  • 举报
回复
将CBItMap 加到CImageList:
这是一个从外部bitmap文件装入CImageList的例子,我想从资源中load更是easy.
而且我测试过如果你要使用超过256色的bitmap并且使用mask,就必须先Create Cimagelist对象,否则微软不管三七二十一默认你的畏途为16色
CString strPath = "c:\\kk\\kk.bmp"
CImageList il;
il.Create(16, 16, ILC_COLOR8 | ILC_MASK, 0, 4);
HBITMAP hbitmap = (HBITMAP) ::LoadImage (
AfxGetInstanceHandle (),
strPath,
IMAGE_BITMAP,
0, 0,
LR_LOADFROMFILE);

if (hIconPin == NULL)
{
TRACE(_T("Can't load bitmap: %s. GetLastError() = %x\r\n"), strPath, GetLastError ());
return -1;
}
else
il.Add( CBitmap::FromHandle(hBitmap), RGB(192, 192, 192) );
::DeleteObject(hBitmap);

CImageList 图像保存到 CBitMap
IMAGEINFO imageinfo;
il.GetImageInfo(index, imageinfo);
BITMAP bitmap;
CBitmap::FormHandle(imageinfo.hbmImage)->GetBitmap( &bitmap );
CBitmap ok;
ok.CreateBitmapIndirect(&bitmap);


16,467

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧