MFC List Control滚动条

来源:互联网 发布:linux c select 编辑:程序博客网 时间:2024/05/16 15:50

参考文章:http://bbs.csdn.net/topics/390302636?page=1

-----------------------------------------------------------------------------------------------------------------------------------------

起因是这样的,我在对话框中,放置了一个List Control控件,里面显示的内容很多,

内容多时就出现了垂直滚动条,我想让List Control能够实时显示最新的内容,

如何做呢?很简单,一行代码就可以了。

代码如下:

[cpp] view plaincopyprint?
  1. //确保List Control最后一行可见  
  2.     m_List.EnsureVisible(m_List.GetItemCount()-1,FALSE);  

--------------------------------------------------------------------------------------------------------------------------------------------



删除一行信息

[cpp] view plaincopy
  1. int nCount = m_myListCtrl.GetItemCount();  
  2.   
  3. // Delete all of the items from the list view control.  
  4. for (int i=0; i < nCount; i++)  
  5. {  
  6.    m_myListCtrl.DeleteItem(0);  
  7. }  

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

[cpp] view plaincopy
  1. OnButtonDelete()   
  2. {  
  3.     POSITION pos = m_list.GetFirstSelectedItemPosition();  
  4.     int idx = m_list.GetNextSelectedItem(pos);  
  5.     while (idx != -1){  
  6.         LVITEM lvi;  
  7.           
  8.         lvi.iItem = idx;  
  9.           
  10.         lvi.iSubItem = 0;  
  11.           
  12.         lvi.mask = LVIF_IMAGE;  
  13.           
  14.         if (m_list.GetItem(&lvi)){  
  15.             m_imgList.Remove(lvi.iImage); //同时删除ImageList中的对应图片  
  16.         }  
  17.           
  18.         m_list.DeleteItem(idx);  
  19.       
  20.         idx = m_list.GetNextSelectedItem(pos);  
  21.     }  
[cpp] view plaincopy
  1. //需要先排序,再重绘,否则从中间删除后该区域会空白,后面的记录不会自动上移  
[cpp] view plaincopy
  1.     m_list.Arrange(LVA_DEFAULT);  
  2.     m_list.RedrawItems(0, m_list.GetItemCount());  
  3. }  

0 0
原创粉丝点击