MFC CTreeCtrl节点重命名

1、右键属性 找到Edit Labels,将其设置为true 可编辑

2、

ON_NOTIFY(TVN_ENDLABELEDIT, IDC_TREE_CHAPTER, OnTvnEndlabeledit)//重命名

// 重命名(点击重命名的方法)
void CCountryGuidePriceDlg::OnRenameCatalog()
{
m_treeChapter.EditLabel(m_treeChapter.GetSelectedItem());
}

// 重命名
void CCountryGuidePriceDlg::OnTvnEndlabeledit(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMTVDISPINFO pTVDispInfo = reinterpret_cast(pNMHDR);
// TODO: 在此添加控件通知处理程序代码


CString strNewText = pTVDispInfo->item.pszText;
strNewText.Trim();
if (strNewText.IsEmpty())
{
*pResult = 0;
return;
}
else
{
*pResult = 1;
}


HTREEITEM hItem = pTVDispInfo->item.hItem;
NORM_CHAPTER_INFO* pChapterInfo = GetChapterInfo(hItem);
if (pChapterInfo != NULL)
{
//m_SQLiteHelper.ReNameChapter(strNewText, pChapterInfo->strCode);
}
}

你可能感兴趣的:(MFC)