ListCtrl没有SetSelectItem()等相似的函数,那我如何实现列表当前的选择状态在第一行呢。

解决方案 »

  1.   

    有个 API 函数可以做到:ListView_SetItemStatus(hWndLV,   //句柄
                           0,        //第几项
                           LVIS_SELECTED, //选中
                           NULL);
      

  2.   

    CListCtrl::SetSelectionMark(int iIndex )
      

  3.   

    下面代码测试通过,视觉上效果达到了。如果是单选的控件,一定要先把前一个选中的取消pListCtrl->SetItemState(nOldItem, 0, LVIS_SELECTED  );//取消
    pListCtrl->SetItemState(nNewItem, LVIS_SELECTED, LVIS_SELECTED  );//选新的