参考文章:http://bbs.csdn.net/topics/390302636?page=1
-----------------------------------------------------------------------------------------------------------------------------------------
起因是这样的,我在对话框中,放置了一个List Control控件,里面显示的内容很多,
内容多时就出现了垂直滚动条,我想让List Control能够实时显示最新的内容,
如何做呢?很简单,一行代码就可以了。
代码如下:
- //确保List Control最后一行可见
- m_List.EnsureVisible(m_List.GetItemCount()-1,FALSE);
--------------------------------------------------------------------------------------------------------------------------------------------
删除一行信息
- int nCount = m_myListCtrl.GetItemCount();
- // Delete all of the items from the list view control.
- for (int i=0; i < nCount; i++)
- {
- m_myListCtrl.DeleteItem(0);
- }
- 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());
- }