如何让CListBox控件滚动条自动向下滚动?

CListBox:: SetCurSel

如果需要,选择一个字符串并将其滚动到视图中。

int SetCurSel(int nSelect);

参数

选择
指定要选择的字符串的从零开始的索引。 如果选择为-1,则将列表框设置为 "没有选择"。

返回值

如果发生错误,则 LB_ERR。

备注

选择新字符串后,列表框将从前面选择的字符串中删除突出显示。

仅将此成员函数与单选列表框一起使用。

若要在多选列表框中设置或删除所选内容,请使用

示例

 
// Select the last item in the list box.
int nCount = m_myListBox.GetCount();
if (nCount > 0)
   m_myListBox.SetCurSel(nCount - 1);

这个会出现一个问题  就是......底部会有蓝色的选择条 所以需要改动

 因此我们可以替换成下面这个哇哈哈哈~~~

CListBox:: SetCaretIndex

将焦点矩形设置为多选列表框中指定索引处的项。

int SetCaretIndex(
    int nIndex,
    BOOL bScroll = TRUE);

参数

nIndex
指定项的从零开始的索引,该索引用于接收列表框中的聚焦框。

bScroll
如果此值为0,则将滚动项,直到它完全可见。 如果此值不是0,则滚动项,直到至少部分可见。

返回值

如果发生错误,则 LB_ERR。

备注

如果该项不可见,则滚动到视图中。

原文地址:https://www.cnblogs.com/Galesaur-wcy/p/14121672.html