循环取得所有可见的节点,判断每个节点的状态值:for(HTREEITEM hItem=m_TestTree.GetRootItem();hItem!=NULL;hItem=m_TestTree.GetNextVisibleItem(hItem))
if(m_TestTree.GetItemState(hItem,0x2000) & 0x2000)
AfxMessageBox(m_TestTree.GetItemText(hItem));
有个缺点,就是如果你选择的项没有展开的话,是找不出来的,所以你必须把所有节点都展开再来调用上述代码..
if(m_TestTree.GetItemState(hItem,0x2000) & 0x2000)
AfxMessageBox(m_TestTree.GetItemText(hItem));
有个缺点,就是如果你选择的项没有展开的话,是找不出来的,所以你必须把所有节点都展开再来调用上述代码..
-BBB
-CCC
-DDD
-EEE
....
....这样类型的数据,我通过什么样的方法可以读入TreeView控件,使BBB,CCC,DDD成为AAA子结点。请GG赐教
HTREEITEM hEdit = m_TestTree.InsertItem("亚洲",2,2);
HTREEITEM hRead = m_TestTree.InsertItem("欧洲",2,2);
//添加二级结点
m_TestTree.InsertItem("中国",0,0,hEdit);
m_TestTree.InsertItem("韩国",0,0,hEdit);
m_TestTree.InsertItem("意大利",0,0,hRead);//设置控件属性
m_TestTree.ModifyStyle(TVS_HASBUTTONS,TVS_HASBUTTONS);
m_TestTree.ModifyStyle(TVS_HASLINES,TVS_HASLINES);
m_TestTree.ModifyStyle(TVS_LINESATROOT,TVS_LINESATROOT);
m_TestTree.ModifyStyle(TVS_SHOWSELALWAYS,TVS_SHOWSELALWAYS);
//展开一级结点
m_TestTree.Expand(hEdit,TVE_EXPAND);//TVE_COLLAPSE
m_TestTree.Expand(hRead,TVE_EXPAND);
如果按照你的要求做,代码应该怎么写?