递归创建treeview item
时间: 2023-04-04 17:00:47 浏览: 61
可以使用递归函数来创建treeview item。首先,需要定义一个函数来创建一个treeview item,然后在该函数中调用自身来创建子项。具体实现可以参考以下代码:
void createTreeViewItem(HWND hwndTV, HTREEITEM hParent, LPCTSTR lpszItemText)
{
TVINSERTSTRUCT tvInsert;
tvInsert.hParent = hParent;
tvInsert.hInsertAfter = TVI_LAST;
tvInsert.item.mask = TVIF_TEXT;
tvInsert.item.pszText = (LPTSTR)lpszItemText;
HTREEITEM hItem = TreeView_InsertItem(hwndTV, &tvInsert);
// 递归创建子项
createTreeViewItem(hwndTV, hItem, _T("子项1"));
createTreeViewItem(hwndTV, hItem, _T("子项2"));
}
然后,在创建treeview时,调用该函数来创建根节点和其子项:
HWND hwndTV = CreateWindowEx(, WC_TREEVIEW, NULL, WS_VISIBLE | WS_CHILD | TVS_HASBUTTONS | TVS_LINESATROOT, , , 200, 300, hwnd, NULL, hInstance, NULL);
HTREEITEM hRoot = TreeView_InsertItem(hwndTV, &tvInsert);
createTreeViewItem(hwndTV, hRoot, _T("根节点"));
注意,以上代码仅为示例,具体实现可能需要根据实际情况进行调整。