您的位置:首页 > 其它

MFC 树控件 将一棵树全部展开

2017-07-31 18:29 127 查看
主要是使用以下两个函数:

m_TreeControl是树控件所关联的CTreeCtrl变量。

//展开树控件的所有结点函数,结合下面的函数一起用
void CDialogModelTree::ItemExpandTree()
{
MyExpandTree(m_TreeControl.GetRootItem());
}

//展开树控件的所有结点,结合上面控件一起用
void CDialogModelTree::MyExpandTree(HTREEITEM hTreeItem)
{
if(!m_TreeControl.ItemHasChildren(hTreeItem))//如果树控件根节点没有子节点则返回
{
return;
}
HTREEITEM hNextItem = m_TreeControl.GetChildItem(hTreeItem);//若树控件的根节点有子节点则获取根节点的子节点
while (hNextItem != NULL)//若有
{
MyExpandTree(hNextItem);//递归,展开子节点下的所有子节点
hNextItem = m_TreeControl.GetNextItem(hNextItem, TVGN_NEXT);//获取根节点的下一个子节点
}
m_TreeControl.Expand(hTreeItem,TVE_EXPAND);//展开节点
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: