在ListView中加入图标

 在ListView中加入图标的第一步是利用ListCtrl的SetImageList函数使该ListView关联到一个ImageList上面去:

CString strBmpPathSet,strBmpPathUnSet;
 strBmpPathSet = "***"; //第一个图标的路径
 strBmpPathUnSet = "***"; //第二个图标的路径
 
 HBITMAP hBitmap; 
 CBitmap *pBitmap; 
 
 m_pImageList = new CImageList(); 
 m_pImageList->Create (16,16,ILC_COLOR4,5,2);
 
 //在ImageList中加入第一个位图文件
 pBitmap = new CBitmap;
 strBmpPathSet += "
//1.bmp"; 
 hBitmap = (HBITMAP)LoadImage(NULL,(LPCTSTR)strBmpPathSet,IMAGE_BITMAP,0,0,LR_LOADFROMFILE);
 pBitmap->Attach(hBitmap); 
 m_pImageList->Add(pBitmap,RGB(0,0,0));
 delete pBitmap;
 
 //在ImageList中加入第二个位图文件
 strBmpPathUnSet += "
//2.bmp";
 hBitmap = (HBITMAP)LoadImage(NULL,(LPCTSTR)strBmpPathUnSet,IMAGE_BITMAP,0,0,LR_LOADFROMFILE);
 pBitmap = new CBitmap;
 pBitmap->Attach(hBitmap); 
 m_pImageList->Add(pBitmap,RGB(0,0,0));
 delete pBitmap;

 listCtrl.SetImageList(m_pImageList,LVSIL_SMALL);

然后在响应ListView的WM_CREATE消息函数OnCreate函数里加入列名:

CListCtrl &listCtrl = GetListCtrl();

 //listCtrl.EnableWindow( FALSE );

 listCtrl.InsertColumn(0, _T("MCUID"),  LVCFMT_CENTER, 60); 
 listCtrl.InsertColumn(1, _T("MCUIP"),  LVCFMT_CENTER, 140); 
 
 listCtrl.SetExtendedStyle(listCtrl.GetExtendedStyle()|LVS_EX_FULLROWSELECT);

接下来在PreCreateWindow函数里使View的类型为报表试图类:

cs.style |= LVS_REPORT | LVS_SHOWSELALWAYS;

最后加入视图内容:

listCtrl.InsertItem( 0 "第一行", 0 ); //这里面后一个0代表视图显示的图标为ImageList中的第几个图标

listCtrl.SetItemText(0, 1, "第一行第二列的内容" );

listCtrl.SetItemText(0, 2, "第一行第三列的内容" );

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值