LoadBitmap只能
载入资源中位图(即用MFC提供的手动添加资源的方法加入的),不能通过图片的文件名直接载入,像:CBitmap bmp if (bmp.LoadBitmap((LPCWSTR)"res\\test.jpg"))就会装载不成功。
如果想通过图片的文件名直接载入,可用LoadImage来完成,像这样:
HBITMAP hbmp;
hbmp = (HBITMAP)::LoadImage( AfxGetInstanceHandle(),
"bitmap1.bmp",IMAGE_BITMAP,0,0, LR_LOADFROMFILE);
CBitmap* pbmp = CBitmap::FromHandle(hbmp);
装载ICON
//初始化,装载图标;
CImageList m_iImageList;
m_iImageList.Create(16,16,TRUE,1,0);
HICON hIcon=NULL;
//0,root;
hIcon = (HICON)::LoadImage(::AfxGetInstanceHandle(),MAKEINTRESOURCE(IDI_ROOT1),IMAGE_ICON,
32, 32,0);
m_iImageList.Add(hIcon);
//1,closed box;
hIcon = (HICON)::LoadImage(::AfxGetInstanceHandle(),
MAKEINTRESOURCE(IDI_CLOSE_BOX), IMAGE_ICON, 16, 16, 0);//IDI_CLOSE_BOX是已经添加的ICON资源
m_iImageList.Add(hIcon);
CBitmap类中的LoadBitmap的用法 CImageList中 LoadImage用法