江湖救急,请教有关CImageList的问题

cnroky 2007-06-26 10:05:05
程序片断如下(MSDN中的片断):
//声明
CImageList m_imageList;

//某个使用的函数
if(!m_imageList.Create(BITMAP_WIDTH,BITMAP_HEIGH,ILC_COLOR8,0,1)){
TRACE(_T("failed to create bitmaplist\n"));
return FALSE; //返回
}

CBitmap bitmap;

if(!bitmap.LoadBitmap(IDB_BITMAP1)){
TRACE(_T("failed to load bitmap\n"));
return FALSE;
}

int nIamge = m_imageList.Add(&bitmap,RGB(0,0,0));
if(nImage < 0){
TRACE(_T("failed to add image\n"));
return FALSE;
}

int nImageCount = m_imageList.GetImageCount();


在调试过程中,发现nImage为0,nImageCount居然也为0。其中需要说明的是IDB_BITMAP1是通过VC6的资源编辑器编辑的一张位图。根据MSDN上的说明,Add失败后返回-1,可是明明返回的是0,但是m_imageList中却没有相应的内容。后在Add函数后调用GetLastError()发现返回6,意为无效的句柄。小弟对界面方面不甚了解,烦劳各位达人指明原因,深表感谢。
...全文
170 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
rulera 2007-06-27
  • 打赏
  • 举报
回复
up
真相重于对错 2007-06-27
  • 打赏
  • 举报
回复
调试看看
add时 bmp是否有效
try
CBitmap bmp;
bmp.LoadBitmap(IDB_BITMAP1)
pImageList->Add(&bmp, RGB(0, 0, 0));
bmp.DeleteObject();

15,978

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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