我这样遍历树为什么不对

net1978 2005-05-23 10:23:53
我的界面上有一个树控件,一个按纽,两个EDIT控件,我想实现的是把EDIT 中的值和树中的节点进行比较如果有相同的就把另一个EDIT中值赋为1,但是现在我在EDIT中输入了一个与树中节点相同的,但是在另一个EDIT中并没有赋值,以下是遍历树代码
void CList_treeDlg::OnButton3()
{
// TODO: Add your control notification handler code here
CString treetext=m_edit1;
UpdateData(true);

HTREEITEM hItem=m_tree.GetRootItem();

TravelChild(hItem);

}

void CList_treeDlg::TravelChild(HTREEITEM Item)
{
HTREEITEM hChildItem,hBrotherItem;

//查找子节点,没有就结束
hChildItem=m_tree.GetChildItem(Item);
CString hh=m_edit1;
UpdateData(true);

if (m_tree.GetRootItem()==NULL)
{return;}
else
{
if (hChildItem!=NULL)
{
CString kk=m_tree.GetItemText(Item);
if (kk==hh)
{
m_edit=1;
UpdateData(false);
}

TravelChild(hChildItem);
//处理子节点的兄弟节点和其子节点
hBrotherItem = m_tree.GetNextSiblingItem(hChildItem);
if (hBrotherItem!=NULL)
{
CString kk1=m_tree.GetItemText(hBrotherItem);
if(kk1 == hh)
{
m_edit=1;
UpdateData(false);
}

TravelChild(hBrotherItem);
hBrotherItem=m_tree.GetNextSiblingItem(hBrotherItem);
}
}
}
}
我看不出来错再那?
...全文
138 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuxianzhi 2005-05-23
  • 打赏
  • 举报
回复
请参考如下遍历代码:
HTREEITEM hTreeItem = m_ctlTreeTemplate.GetRootItem();
BuildMap(hTreeItem);

void BuildMap(HTREEITEM hTreeItem)
{
if ( hTreeItem == NULL ) return;
//
CString strItemText = m_ctlTreeTemplate.GetItemText(hTreeItem);
int nIndex = strItemText.Find("<=>");
if ( nIndex != -1 ) {
CString strLabelLeft = GetXMLLabel(strItemText);
CString strLabelRight = strItemText.Right(strItemText.GetLength() - nIndex - 3 );
m_pDataImporter->GetConfXML()->AddMap(strLabelLeft,strLabelRight);
}
BuildMap(m_ctlTreeTemplate.GetChildItem(hTreeItem));
BuildMap(m_ctlTreeTemplate.GetNextSiblingItem(hTreeItem));
}

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧