当前位置: 老葡京网站娱乐 > 编程语言 > VC++ > 正文

VC List Control控件如何删除选中的记录

时间:2015-02-20
 老葡京网站娱乐 www.sdguanhua.com 
OnButtonDelete()   
{  
    POSITION pos = m_list.GetFirstSelectedItemPosition();  
    int idx = m_list.GetNextSelectedItem(pos);  
    while (idx != -1){  
        LVITEM lvi;  
              
        lvi.iItem = idx;  
              
        lvi.iSubItem = 0;  
              
        lvi.mask = LVIF_IMAGE;  
              
        if (m_list.GetItem(&lvi)){  
            m_imgList.Remove(lvi.iImage); //同时删除ImageList中的对应图片  
        }  
              
        m_list.DeleteItem(idx);  
          
        idx = m_list.GetNextSelectedItem(pos);  
    }

//需要先排序,再重绘,否则从中间删除后该区域会空白,后面的记录不会自动上移

    m_list.Arrange(LVA_DEFAULT);  
    m_list.RedrawItems(0, m_list.GetItemCount());  
}

更多精彩内容:http://www.sdguanhua.com/Programming/vc/