比如有下面结构的TreeCtrl:
|
+----水果
+----五谷
想在水果节点下添加“香蕉”子节点,在VC++中怎样编程?
比如有下面结构的TreeCtrl:
|
+----水果
+----五谷
想在水果节点下添加“香蕉”子节点,在VC++中怎样编程?
CTreeCtrl* pCtrl = (CTreeCtrl*) GetDlgItem(IDC_TREE1);
ASSERT(pCtrl != NULL);
// Insert a root item using the structure. We must
// initialize a TVINSERTSTRUCT structure and pass its
// address to the call.
TVINSERTSTRUCT tvInsert; // 这是定义了一个父节点
tvInsert.hParent = NULL;
tvInsert.hInsertAfter = NULL;
tvInsert.item.mask = TVIF_TEXT;
tvInsert.item.pszText = _T("United States");
HTREEITEM hCountry = pCtrl->InsertItem(&tvInsert); // 插入父节点,记住前面这个hCountry 下面又把它作为了父节点
HTREEITEM hPA = pCtrl->InsertItem(TVIF_TEXT,
_T("Pennsylvania"), 0, 0, 0, 0, 0, hCountry, NULL); //这里插入一个hCountry 的子节点
HTREEITEM hWA = pCtrl->InsertItem(_T("Washington"), // 这里又插入一个hCountry 的子节点并且放在hPA的后面(是同一个辈分的)
0, 0, hCountry, hPA);
pCtrl->InsertItem(_T("Pittsburgh"), hPA, TVI_SORT); // 这里连续插入了三个hPA的子节点
pCtrl->InsertItem(_T("Harrisburg"), hPA, TVI_SORT);
pCtrl->InsertItem(_T("Altoona"), hPA, TVI_SORT);
pCtrl->InsertItem(_T("Seattle"), hWA, TVI_SORT); //这里插入了3个hWA的子节点
pCtrl->InsertItem(_T("Kalaloch"), hWA, TVI_SORT);
pCtrl->InsertItem(_T("Yakima"), hWA, TVI_SORT);
根据上面的方法,你可以插入自己的节点了
下面给你函数原型看看
HTREEITEM InsertItem(