MFC中设置ListControl选中某一行,并且滑动(跳转)到选择行位置,主要利用CListCtrl中的SetItemState和EnsureVisible实现
调用接口函数如下:
void SetListControlAtPos(CListCtrl listCtrl, int iIndex)
{
//选中时第二个参数值为1,取消选中时第二个参数为0
listCtrl.SetItemState(iIndex, LVIS_SELECTED|LVIS_FOCUSED, LVIS_SELECTED|LVIS_FOCUSED);
listCtrl.EnsureVisible(iIndex, FALSE);
//竖直滑动为SB_VERT, 水平为SB_HORZ
//listCtrl.SetScrollPos(SB_VERT, iIndex, FALSE); //这一句貌似没有效果
UpdateData(FALSE);
}