我的对话框上有简单的CTreeCtrl。它只有两个深度级别,如下所示:
想象一下,用户点击了"第三"节点因此被选中,然后他按下对话框上的按钮并执行下一个代码:
// m_tree is a dialog-based class member of CTreeCtrl type
HTREEITEM hItem = m_tree.GetSelectedItem();
if (hItem)
{
hItem = m_tree.GetNextSiblingItem(hItem);
if (hItem)
{
m_tree.SelectItem(hItem);
}
}
在那之后,哪个标签是"第四"在我的示例中,在树控制窗口的底部变为可见:
如何强制树控制不向下滚动到所选项目?我只是想选择它而且那就是全部。
答案 0 :(得分:2)
您可以尝试在之前选择的项目上调用EnsureVisible。这可能会闪烁,因此您可以在进行新选择和EnsureVisible之前尝试使用SetRedraw(FASLE)。