CListCtrl 实现缩略图并具备点击查看全图功能

本文介绍了如何使用CListCtrl在MFC应用中展示缩略图,并实现点击缩略图查看全图的功能。通过创建CImageList对象,将图片加载并绑定到CListCtrl,然后在事件监听中处理点击事件,调用ShowImg函数展示全图。
摘要由CSDN通过智能技术生成

1.声明一个CImagelist和CListCtrl对象

   CImagelist* pImageList = new CImageList;

   CListCtrl* m_ListCtrl;

 

2.pImageList->Create(PicWidth,PicHeight, ILC_COLOR32, PicNum, 0);  
  m_ListCtrl.SetImageList(pImageList,LVSIL_NORMAL); //将CImagelist与CListCtrl绑定
  m_ListCtrl.DeleteAllItems();//先清除已有的
  m_ListCtrl.SetIconSpacing(CSize(125,5));    
  for (int i=0;i<PicNum;i++)
  {
   if( !f.Open(PicPath, CFile::modeRead)){
    hBitmap = (HBITMAP)LoadImage(NULL,PicPath,IMAGE_BITMAP,110,83,
     LR_CREATEDIBSECTION|LR_DEFAULTSIZE|LR_LOADFROMFILE); //加载成缩略图
   }
   pBitmap[i].Attach(hBitmap); 
   pImageList->Add(&pBitmap[i],RGB(0,0,0));//添加图片到CImagelist中
   int x = m_ListCtrl.InsertItem(i,NULL,i);    

  m_BmpPathMap.SetAt(i,PicPath);//将图片路径保存到CMap中,为点击看大图使用  
  }

执行步骤二,已经将图片添加的ListCtrl控件中了,这样图片就可以在Listctrl控件上显示出来了

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值