在更新listview中的某一个item项后,整个view都会闪一下,感觉像是把整个view的内容都更新,如何在这种情况下不出现整个view都闪的现象?

解决方案 »

  1.   

    你应该调用它的方法
    BOOL Update(
       int nItem 
    );
     
    实例:
    UINT i, uSelectedCount = m_myListCtrl.GetSelectedCount();
    int  nItem = -1;// Update all of the selected items.
    if (uSelectedCount > 0)
    {
       for (i=0; i < uSelectedCount; i++)
       {
          nItem = m_myListCtrl.GetNextItem(nItem, LVNI_SELECTED);
          ASSERT(nItem != -1);
          m_myListCtrl.Update(nItem); 
       }
    }
      

  2.   

    通过SetItemText这是列表内容不会闪的
      

  3.   

    试试这个函数。BOOL RedrawItems(
       int nFirst,
       int nLast 
    );