MFC中CListCtrl类依靠CImageList贴图并显示不同图像

只介绍主要方法,函数的具体参数可在MSDN上查阅

  -------------------------------------------

  CListCtrl     m_ListCtrl;

  CImageList m_ImageList;

  CBitmap     bmp,bmp2;

                  .........

  ----------------------------------------

1.在CImageList中加载一系列图像(如添加2张)

  m_ImageList.Create(48, 48, ILC_COLOR24, 4, 4);

  bmp.LoadBitmap(IDB_BMP1);
  m_ImageList.Add(&bmp,(CBitmap*)NULL);

  bmp2.LoadBitmap(IDB_BMP2);
  m_ImageList.Add(&bmp2,(CBitmap*)NULL);

  此时m_ImageList包含2张图像

2.把图像加载到CListCtrl中

  m_ListCtrl.SetImageList(&PatientImageList,LVSIL_SMALL);
  m_ListCtrl.InsertColumn(0,"",LVCFMT_LEFT,50,0); 

  第二句代码将图像加载到列表的第一列中,显示的图像为m_ImageList的第一张图像,那么如何显示第2张第n张图像呢?

3.动态显示m_ImageList的图像

  如在条件A成立时在第nRow行显示第2张图像

  if (/*条件A*/)
  {
    LVITEM lvItem;
    lvItem.mask=LVIF_IMAGE;
    lvItem.iSubItem=0;
    lvItem.iImage=1;       //图像序列号,0,1,2...分别表示m_ImageList中第1,2,3...张图像
    lvItem.iItem = nRow;  //nRow为显示位置的行数
    m_ListCtrl.SetItem(&lvItem);  //完成动态显示
  }

转载于:https://www.cnblogs.com/shanlizi/p/6767668.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值