CListCtrl控件,Report风格列表中添加图片

CListCtrl控件,Report风格列表中添加图片

一、设置CListCtrl控件扩展风格(网络线、整行选中、图片)
    DWORD dwStyle;

    dwStyle = m_list1.GetExtendedStyle();
    dwStyle = dwStyle|LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES|LVS_EX_SUBITEMIMAGES ;
    m_list1.SetExtendedStyle(dwStyle);
    
二、添加图像列表
        1、在类中添加成员变量    CImageList m_imList;
        2、为图像列表添加图片
        
        //Bitmap图片(应该为48X48大小)
        m_imList.Create(32,32,ILC_COLOR,0,20);

        CBitmap * pBmp = NULL;
        pBmp = new CBitmap();
        pBmp->LoadBitmapW(IDB_BITMAP_GREE);
        m_imList.Add(pBmp,RGB(0,0,0));
        delete pBmp;

        pBmp = new CBitmap();
        pBmp->LoadBitmapW(IDB_BITMAP_READ);
        m_imList.Add(pBmp,RGB(0,0,0));
        delete pBmp;
        
        //ICON模式(方便一点)
        HICON hIcon;

        m_imList.Create(32,32,ILC_COLOR,2,20);

        hIcon = AfxGetApp()->LoadIconW(IDI_ICON_GREE);
        m_imList.Add(hIcon);

        hIcon = AfxGetApp()->LoadIconW(IDI_ICON_READ);
        m_imList.Add(hIcon);
        
三、设置图像列表与CListCtrl控件关联,要使用LVSIL_SMALL风格
m_list1.SetImageList(&m_imList,LVSIL_SMALL ); //这里要使用,LVSIL_SMALL风格
    
四、给CListCtrl控件添加二列
m_list1.InsertColumn(0,_T("图形列"),LVCFMT_CENTER,100);
m_list1.InsertColumn(1,_T("列名"),LVCFMT_CENTER,100);
    
五、添加数据

int nRow;  //记录行号
LVITEM lvItem={0};

//第一行数据
lvItem.mask = LVIF_IMAGE|LVIF_TEXT|LVIF_STATE;    //文字、图片、状态
lvItem.iItem = 0;        //行号(第一行)
lvItem.iImage = 0;    //图片索引号(第一幅图片)
lvItem.iSubItem = 0;    //子列号

nRow = m_list1.InsertItem(&lvItem);        //第一列为图片
m_list1.SetItemText(nRow,1,_T("PPP"));  //第二列为文字

//第二行数据
lvItem.mask = LVIF_IMAGE|LVIF_TEXT|LVIF_STATE;    //文字、图片、状态
lvItem.iItem = 1;        //行号(第二行)
lvItem.iImage = 1;    //图片索引号(第二幅图片)
lvItem.iSubItem = 0;    //子列号

nRow = m_list1.InsertItem(&lvItem);        //第一列为图片
m_list1.SetItemText(nRow,1,_T("PPP2"));  //第二列为文字
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值