我知道如何使某一列显示图像,但是这一列中所有的行都得显示图像。
怎么样能只让部分行显示图像?
谢谢~~

解决方案 »

  1.   

    用这个方法试一下
    m_lList.InsertItem(rootFlag,_T(""));
    m_lList.SetItem(rootFlag,0,LVIF_IMAGE,_T(""),0,NULL,NULL,0);
      

  2.   

    如果不行再在前面加LVITEM lvItem={0};
    lvItem.mask=LVIF_IMAGE|LVIF_TEXT|LVIF_STATE;//文字、图片、状态 
    lvItem.iItem=0;//行号
    lvItem.iImage=0;//图片索引号(第一幅图片)
    lvItem.iSubItem=0;//子列号
      

  3.   

    在头文件中添加CImageList m_ImageList;m_ImageList.Create(38,42,ILC_COLOR24,3,20);// ILC_COLOR、ILC_COLOR4、ILC_COLOR8、ILC_COLOR16、ILC_COLOR24、ILC_COLOR32、 ILC_COLORDDB和ILC_MASK图像列表的类型
    //38,42必须为图片的大小,否则读入图片的张数会出错,按照原图片的大小,除以设置的大小,即获取取得图片的张数
    CBitmap pBmp;//添加三张图片
    pBmp.LoadBitmapW(IDB_BITMAP_STYLE);
    m_ImageList.Add(&pBmp,RGB(0,0,0)); CBitmap pBmp2;
    pBmp2.LoadBitmapW(IDB_BITMAP_DIR);
    m_ImageList.Add(&pBmp2,RGB(0,0,0)); CBitmap pBmp3;
    pBmp3.LoadBitmapW(IDB_BITMAP6);
    m_ImageList.Add(&pBmp3,RGB(0,0,0)); m_lList.SetImageList(&m_ImageList,LVSIL_SMALL);//这里要使用,LVSIL_SMALL风格   m_lList.InsertColumn(0,_T(""),LVCFMT_LEFT,50);
    m_lList.InsertColumn(1,_T(""),LVCFMT_LEFT,width-75);
    m_lList.InsertColumn(2,_T(""),LVCFMT_LEFT,25); LVITEM lvItem={0};
    lvItem.mask=LVIF_IMAGE|LVIF_TEXT|LVIF_STATE;//文字、图片、状态 
    lvItem.iItem=0;//行号
    lvItem.iImage=0;//图片索引号(第一幅图片)
    lvItem.iSubItem=0;//子列号 int rootFlag=0;//行
    m_lList.InsertItem(rootFlag,_T(""));
    m_lList.SetItem(rootFlag,0,LVIF_IMAGE,_T(""),0,NULL,NULL,0);
    m_lList.SetItemText(rootFlag,1,_T("container"));
    m_lList.SetItem(rootFlag,2,LVIF_IMAGE,_T(""),2,NULL,NULL,0);
    rootFlag++;