一、创建树形控件
m_Operatelist.Create(WS_VISIBLE | WS_TABSTOP | WS_CHILD | WS_BORDER
| TVS_HASBUTTONS | TVS_LINESATROOT | TVS_HASLINES
| TVS_DISABLEDRAGDROP|TVS_TRACKSELECT|TVS_SHOWSELALWAYS,
CRect(15, 45, 165,390), this, IDC_TREE2);
TVS_SHOWSELALWAYS这个属性不可少。
二、
1、针对没有父节点的树
int m_Count=m_Operatelist.GetCount();
HTREEITEM hRoot=m_Operatelist.GetRootItem(); //获取父节点
int nCount=m_Operatelist.GetCount();
int nNum=0;
CString str;
while(nNum
{
str=m_Operatelist.GetItemText(hRoot);//获取该节点的内容
if(str.CompareNoCase(m_Type)==0)//判断是否是自己需要的节点
{
m_Operatelist.Select(hRoot,TVGN_CARET);//使之选中
break;
}
hRoot=m_Operatelist.GetNextItem(hRoot,TVGN_NEXT);
nNum++;
}
2、有一个父节点,遍历子节点
HTREEITEM hRoot=m_Operatelist.GetRootItem(); HTREEITEM hChildItem = m_Operatelist.GetChildItem(hRoot); int nCount=m_Operatelist.GetCount(); int nNum=0; CString str; while(nNum