我创建了一个基于Dialog的简单MFC应用程序。我将TreeControl拖到对话框资源编辑器上。我给它一个成员变量名。我还有一个带有事件处理函数的按钮。当我单击按钮时,我想填充树。
问题是,只添加了根元素,没有别的。有什么想法吗?
`
void CCrysisDialogDecryptorDlg::OnBnClickedButton1()
{
HTREEITEM hItem, hCar;
hItem = m_directoryListing.InsertItem(L"C:\\",TVI_ROOT);
hCar = m_directoryListing.InsertItem(L"Child",hItem);
m_directoryListing.InsertItem(L"Grandchild",hCar);
m_directoryListing.InsertItem(L"Grandchild",hCar);
m_directoryListing.InsertItem(L"Grandchild",hCar);
}
`
答案 0 :(得分:1)
您的代码没有任何问题,我尝试了相同的代码并且它有效。您可能只看到根元素,因为默认情况下不会展开树。 您可以添加以下代码来展开您的树,并尝试查看所有元素。
hItem= m_directoryListing.GetFirstVisibleItem();
while (hItem != NULL)
{
m_directoryListing.Expand(hItem,TVE_EXPAND);
hItem= m_directoryListing.GetNextItem(hItem, TVGN_NEXTVISIBLE);
}