本文转自:http://blog.csdn.net/rexlend/article/details/5350122
在用ListCtrl控件时,当向该控件中添加数据时,怎么样可以把滚动条时时滚动到最后一行,这样便可看到添加的新数据内容
1
加完数据后执行
EnsureVisible(最后一行索引)
可以保证滚动到最后
Example
// The pointer to my list view control.
extern CListCtrl* pmyListCtrl;
// Ensure that the last item is visible.
int nCount = pmyListCtrl->GetItemCount();
if (nCount > 0)
pmyListCtrl->EnsureVisible(nCount-1, FALSE);
2
CListCtrl m_ListCtrl;
m_ListCtrl.SetFocus();
//设置最后一行被选中
m_ListCtrl.SetItemState( m_ListCtrlLog.GetItemCount() - 1,
LVIS_ACTIVATING | LVIS_FOCUSED | LVIS_SELECTED,
LVIS_SELECTED | LVIS_FOCUSED );
//滚动到最后一行
m_ListCtrl.Scroll( CSize( 0, 100000 ) );
3
加完数据后执行
MyListCtrl.SendMessage(WM_VSCROLL, SB_BOTTOM, NULL);