我在MFC窗口应用程序中有两棵树视图。 Tree1和Tree2 如果我在tree1中选择了一项,则应该在tree2中找到并获得选择。
我的代码如下。 选择第一个树项并尝试将其传递给Tree2
void TreePage::TreeSelHandle(NMHDR* pNMHDR, LRESULT* pResult)
{
CTreeCtrl m_ctlTree1, m_ctlTree2;
m_ctlTree1.OnTvnSelTreeItem(pNMHDR, pResult);
NMHDR nmhdr;
nmhdr.code = TVN_SELCHANGED;
nmhdr.hwndFrom = m_ctlTree2.GetSafeHwnd();
nmhdr.idFrom = IDC_MODELVIEW_TREE2;
if (m_ctlTree2.GetSafeHwnd())
m_ctlTree2.OnTvnSelTreeItem(&nmhdr, pResult);
}
TreeSelection代码在下面。
void UITreePageCtrl::OnTvnSelTreeItem(NMHDR *pNMHDR, LRESULT *pResult)
{
NM_TREEVIEW* pNMTreeView = (NM_TREEVIEW*)pNMHDR;
CString strTreeText;
Select(pNMTreeView->itemNew.hItem, TVGN_CARET | TVGN_FIRSTVISIBLE |
TVGN_DROPHILITE);
SelectItem(pNMTreeView->itemNew.hItem);
strTreeText = GetItemText(pNMTreeView->itemNew.hItem);
*pResult = 0;
}
这不起作用。 Tree2选择失败。 GetItemText返回null char。 如何解决这个问题?预先感谢。