Welcome

首页 / 软件开发 / C++ / VC List Control控件如何删除选中的记录

VC List Control控件如何删除选中的记录2015-02-20
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());}