MFC - 图像列表



**图像列表**是相同大小图像的集合,每个图像都可以通过其从零开始的索引来引用。图像列表用于有效地管理大量图标或位图。图像列表由**CImageList 类**表示。

让我们创建一个新的 MFC 应用程序**MFCImageListDemo**,并使用以下设置。

MFCImageListDemo

**步骤 1** - 将 bmp 文件作为资源添加到您的应用程序中。

**步骤 2** - 在 CMFCImageListDemoView 类的头文件中,添加以下两个变量。

CImageList ImageList;
int nImage;

**步骤 3** - 在 CMFCImageListDemoView 的构造函数中添加以下代码。

CMFCImageListDemoView::CMFCImageListDemoView() {
   // TODO: add construction code here
   ImageList.Create(800, 800, ILC_COLOR, 4, 1);
   
   CBitmap bmp;
   bmp.LoadBitmap(IDB_BITMAP1);
   ImageList.Add(&bmp, RGB(0, 0, 0));

}

**步骤 4** - 按如下方式调用 CImageList::Draw() 方法。

void CMFCImageListDemoView::OnDraw(CDC* pDC) {
   CMFCImageListDemoDoc* pDoc = GetDocument();
   ASSERT_VALID(pDoc);

   nImage = 0;
   ImageList.Draw(pDC , nImage, CPoint(0,0), ILD_NORMAL);
   Invalidate();

   if (!pDoc)
      return;

   // TODO: add draw code for native data here
}

**步骤 5** - 当您运行此应用程序时,您将看到以下输出。

Image Lists
mfc_windows_controls.htm
广告
© . All rights reserved.