1) 设置ctreectrl label editable 属性
long lStyle=::GetWindowLong(m_tree.GetSafeHwnd(),GWL_STYLE);
lStyle|=TVS_EDITLABELS;
::SetWindowLong(m_tree.GetSafeHwnd(),GWL_STYLE,lStyle);
或者 m_tree.ModifyStyle(0,TVS_EDITLABELS);
注意:此处设置TVS_EDITLABELS很重要,否则后面的都是白搭!!!
我在使用的时候,后面的begin和End的消息响应时间也写了,死活都不出来!!!我在资源里面也设置了可编辑,但是!!!!我在初始化树结构信息的时候设置了树的状态,没有设置TVS_EDITLABELS。也就是说,我设置的可编辑状态又被我自己干掉了!!!汗颜
2) 消息响应:
ON_NOTIFY(TVN_BEGINLABELEDIT, IDC_TREE_COMTYPE, &OnTvnBeginlabeleditTreeComtype)
ON_NOTIFY(TVN_ENDLABELEDIT, IDC_TREE_COMTYPE, &OnTvnEndlabeleditTreeComtype)
ON_NOTIFY(NM_DBLCLK, IDC_TREE_COMTYPE, &OnNMDblclkTreeComtype)
我是用双击响应