我的程序是这样的:
……
……
CListCtrl &rListCtrl=GetListCtrl();LVFINDFO info;
LVITEM lparam;lparam.iSubItem=1;
lparam.mask=LVIF_TEXT;
lparam.pszText="aaa";info.flags=LVFI_PARAM;int nIndex=rListCtrl.FindItem(&info);
rListCtrl.SetItemText(nIndex,1,"bbb");
rListCtrl.Update(nIndex);
*****************************************************
debug的时候发现,nIndex=-1
请问FindItem(&info)该怎么用呢?

解决方案 »

  1.   

    CListCtrl &rListCtrl=GetListCtrl();LVFINDINFO info;
    LVITEM lparam;lparam.iSubItem=1;
    lparam.mask=LVIF_TEXT;
    lparam.pszText="aaa";info.flags=LVFI_PARAM;
    info.lParam=&lparam;
    int nIndex=rListCtrl.FindItem(&info);
      

  2.   

    我试一下
    在编译的时候,显示info.lParam=&lparam; 这一行发生错误
    cannot convert from 'struct tagLVITEMA *' to 'long'
      

  3.   

    理解错了...
    lParam是指你在向listctrl添加一个项时指定的附加数据...
      

  4.   

    通过FindItem只能查一个项的标签而不能查它的子项标签...
      

  5.   

    那么除了用GetItemText循环查找,还有没有其他根据子项标签确定nIndex的方法呢?