读书人

VC中施用CTreeCtrl 一次展开所有的节点

发布时间: 2012-11-08 08:48:11 作者: rapoo

VC中使用CTreeCtrl 一次展开所有的节点
VC中使用CTreeCtrl 一次展开所有的节点

CTreeCtrlm_tree;

void CTreetestDlg::Onexpandtree() //展开所有节点
{
// TODO: Add your command handler code here
m_tree.Expand(m_tree.GetRootItem(),TVE_EXPAND);
m_handleTreeItem = m_tree.GetRootItem();
while(m_handleTreeItem)
{
m_handleTreeItem = m_tree.GetChildItem(m_handleTreeItem);
m_tree.Expand(m_handleTreeItem, TVE_EXPAND);
}
}

上面是我的代码 他只能一次展开第一个子节点的所有第一个子项

如何修改 能将其他的兄弟节点的所有节点全部展开啊

望高手指点 最好给出代码 谢谢

[解决办法]
哎 为啥不能编辑

C/C++ code
void CTreetestDlg::Onexpandtree() //展开所有节点 { // TODO: Add your command handler code here     MyExpandTree(m_tree.GetRootItem()); }void MyExpandTree(HTREEITEM hTreeItem){    if(!m_tree.ItemHasChildren(hTreeItem))    {        return;    }    HTREEITEM hNextItem = m_DynTree.GetChildItem(hTreeItem);    while (hNextItem != NULL)    {        MyExpandTree(hNextItem);        hNextItem = m_tree.GetNextItem(hChildItem, TVGN_NEXT);    }    m_tree.Expand(hTreeItem,TVE_EXPAND);} 

读书人网 >VC/MFC

热点推荐