Visual Studio C ++ MFC:从imagelist显示位图

时间:2015-09-03 07:35:33

标签: c++ bitmap mfc imagelist

我有一个图片控件的对话框,我想显示我的图片列表的图像。如果我想通过调用

显示位图(无图像列表)
select date,order_count where status = 'follow up'

它有效,但我的图像列表失败了。 这是我的代码:

CBitmap m_bmp;
m_bmp.LoadBitmap(IDB_BITMAP);
m_picture.SetBitmap(m_bmp); //m_picuture is the member of the picture control

有人能帮助我吗?

1 个答案:

答案 0 :(得分:1)

从大位图创建图像列表:

m_imagelist.Create(IDB_BITMAPARR, 48, 0, RGB(255, 0, 255))

图标宽度为48,位图宽度为144(或n * 48)。

使用ExtractIcon创建新图标。索引从零开始,因此使用ExtractIcon(0)作为第一个图标。

HICON hicon = m_imagelist.ExtractIcon(0);
ICONINFOEX iinfo;
iinfo.cbSize = sizeof(ICONINFOEX);
GetIconInfoEx(hicon, &iinfo);

m_picture.SetBitmap(iinfo.hbmColor);
//destroy hicon when finished