在CTreeCtrl等控件中实现drag时,相应图标也随着drag主要是使用CImageList对象中的DrapEnter、DrapLeave、DragMove等方法来实现的。
更改CTreeCtrl中item的值:
ON_NOTIFY_REFLECT(TVN_ENDLABELEDIT, OnEndLabelEdit)
void CMyTreeCtrl::OnEndLabelEdit(LPNMHDR pnmhdr, LRESULT *pLResult)
{
TV_DISPINFO *ptvinfo;
ptvinfo = (TV_DISPINFO *)pnmhdr;
if (ptvinfo->item.pszText != NULL)
{
ptvinfo->item.mask = TVIF_TEXT;
SetItem(&ptvinfo->item);
}
*pLResult = TRUE;
}
TV_INSERTSTRUCT是插入TreeCtrl控件的hitem结构