大家看看,怎么实现组合框中列表项和树结构中的节点对应

大家看看,如何实现组合框中列表项和树结构中的节点对应?


功能具体说就是在组合框中鼠标点击一项,完了对应数结构的节点显示出来,过滤删掉其他不相关的节点。比如:


组合框
void   CFirstDlg::OnCbnSelchangeComboMtype()
{
if   (m_nMethodType   ==   0)
MessageBox( "aaa ");
else   if   (m_nMethodType   ==   1)
MessageBox( "bbb ");
else
MessageBox( "ccc ");
}

树结构

+aaa
+bbb
+ccc

当我在组合框下单击“aaa”时,数结构aaa节点展开,bbb、ccc节点隐藏。点击bbb时其它节点隐藏。我说清楚了没?
我是新手,大家帮忙看看这个代码怎么写?谢谢

------解决方案--------------------
楼主的把树节点的展开收缩写在一个函数里,通过参数决定展开哪一个节点
例如这个函数是Func(int nodeid)
然后在组合框里也调用这个函数就行了

------解决方案--------------------
前提:
假若树控件初始化项时,每增加个项都加入下面的代码
m_treeCtrl.SetItemData(index,[INT]);
[INT]值注意同组合框中的对应值关联....


在为组合框增加项时需要下面的代码
m_cmbCtrl.SetItemData(index,[INT]);

当选中组合框的一项时
INT curID = m_cmbCtrl.GetItemData(m_cmbCtrl.GetCurSel());

在树控件中
for(...)
curID1 = m_treeCtrl.GetItemData(树当前选择);
if(curID1 != curID)
删除树此结点项