当前位置 : 主页 > 编程语言 > c语言 >

VC List Control控件如何删除选中的记录实例详解

来源:互联网 收集:自由互联 发布时间:2021-06-05
VC List Control控件如何删除选中的记录实例详解 实例代码: OnButtonDelete() { POSITION pos = m_list.GetFirstSelectedItemPosition(); int idx = m_list.GetNextSelectedItem(pos); while (idx != -1){ LVITEM lvi; lvi.iItem = idx;

VC List Control控件如何删除选中的记录实例详解

实例代码:

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()); 
}

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

网友评论