MFC CListView 加载小图标的问题

m_editFont.CreatePointFont(160, "宋体");
    SetFont(&m_editFont);

    CImageList m_Imagelist;
    CBitmap bitmap;
    m_Imagelist.Create(32, 32, ILC_COLOR24, 2, 1);
    bitmap.LoadBitmap(IDB_BITMAP11);

    CRect rect;
    GetClientRect(&rect);

    ptheList = &GetListCtrl();
    ptheList->ModifyStyle(0, LVS_REPORT | LVS_SHOWSELALWAYS | LVS_SORTASCENDING);
    ptheList->SendMessage(LVM_SETEXTENDEDLISTVIEWSTYLE, 0, LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT | LVS_EX_SUBITEMIMAGES);

    ptheList->SetImageList(&m_Imagelist, LVSIL_SMALL);

    ptheList->InsertColumn(0, "默认笔记", LVCFMT_LEFT, rect.Width(), 0);

    int pos;
    pos = ptheList->InsertItem(1, "123", 0);
    pos = ptheList->InsertItem(2, "321", 0);
}

这样运行出来的图标是空白的。。调试发现 m_Imagelist 和 bitmap 都没有成功把位图加载进去。。为什么。。是哪里错了?

imagelist是否加载bitmap成功了没,图片资源需要能符合格式

这个要看你的资源了,ILC_COLOR24怎么写的,大小、颜色深度是不是和m_Imagelist所要求的一致。

知道问题在哪了。。应该是ImageList没有Add的原因。。
以下把成功代码贴出来:

  CImageList *m_Imagelist;
    m_Imagelist = new CImageList();
    m_Imagelist->Create(32, 31, ILC_COLOR24, 0, 4);
    CBitmap bitmap;
    bitmap.LoadBitmap(IDB_BITMAP11);
    m_Imagelist->Add(&bitmap, RGB(0, 0, 0));
    bitmap.DeleteObject();

    ptheList->SetImageList(m_Imagelist, LVSIL_SMALL);

    ptheList->InsertColumn(0, "默认笔记", LVCFMT_LEFT, rect.Width(), 0);
    ptheList->InsertItem(0, "默认笔记", 0);

不过调试到m_Imagelist->Add(&bitmap, RGB(0, 0, 0)); 时发现 m_ImageList和bitmap其实一直都显示<无可用信息....>
就好像图片资源没加载进去一样。。但是显示是正常的了。。这里我也不大清楚这个所谓的无可用信息是什么意思。。各位能否解释一下。。
图片说明

Rebuild一下再看看呢?