MFC - 图像列表

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

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

MFCImageListDemo

步骤 1 − 将 bmp 文件添加为应用程序中的资源。

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

CImageList ImageList;
int nImage;

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

CMFCImageListDemoView::CMFCImageListDemoView() {
   // TODO:在此处添加构造代码
   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 − 当您运行此应用程序时,您将看到以下输出。

图像列表

❮ mfc_windows_controls.html