void CCaseSchedule::InvalidateProgressCtrls()
{
      CListCtrl &m_pList =(CListCtrl &)GetListCtrl();
      int nItem = CurentCaseNum;
      int nSubItem = 2;
      if (2 != nSubItem)
          return;     CRect rcSubItem;
     m_pList.GetSubItemRect(nItem, nSubItem, LVIR_BOUNDS, rcSubItem);
     int n = m_pList.GetItemCount();
     for (int i=0;i<n;i++)
     {
if ((pCtrl !=NULL) && (i == nItem))
{
m_pList.SetItemData(nItem,(DWORD)pCtrl);
pCtrl->MoveWindow(rcSubItem);
pCtrl->ShowWindow(SW_SHOW);
}
     }    Invalidate();
}
我在列表的第三列创建了进度条,在进度条位置满后再销毁,这样看到的进度条只有一行有在滚轮作用下需要重新刷新进度条,我写的这个函数作用不大,希望大家给点意见啊