如何实现树形控件可编辑状态

时间:2022-09-06 16:02:39
大家都用过QQ吧,填加完新组后,新填加的组名是可以编辑的,我想实现类似的功能,请问哪位有好的建议?新添加的树项可以编辑。

5 个解决方案

#1


动态创建一个Edit放到你要改的位置,在里面输入,确定之后再释放掉。

#2


引用 1 楼 happysalay 的回复:
动态创建一个Edit放到你要改的位置,在里面输入,确定之后再释放掉。

这是一个好办法。

#3


用树形控件提供的函数CTreeCtrl::EditLabel。

CEdit* EditLabel( HTREEITEM hItem );

#4


引用 3 楼 xylicon 的回复:
用树形控件提供的函数CTreeCtrl::EditLabel。

CEdit* EditLabel( HTREEITEM hItem );

这是正解,在Edit里输入完后响应TVN_ENDLABELEDIT这个.

#5


Windows 支持编辑树项。
在对话框编辑器中指定 Edit Labels 属性为 True,或增加样式 TVS_EDITLABELS。

响应 TVN_BEGINLABELEDIT 以指定某项是否允许被编辑;
响应 TVN_ENDLABELEDIT 以指定编辑后的文本。
单击树项或调用 EditLabel 以开始编辑。

具体参照 MSDN,有很详细的说明。

#1


动态创建一个Edit放到你要改的位置,在里面输入,确定之后再释放掉。

#2


引用 1 楼 happysalay 的回复:
动态创建一个Edit放到你要改的位置,在里面输入,确定之后再释放掉。

这是一个好办法。

#3


用树形控件提供的函数CTreeCtrl::EditLabel。

CEdit* EditLabel( HTREEITEM hItem );

#4


引用 3 楼 xylicon 的回复:
用树形控件提供的函数CTreeCtrl::EditLabel。

CEdit* EditLabel( HTREEITEM hItem );

这是正解,在Edit里输入完后响应TVN_ENDLABELEDIT这个.

#5


Windows 支持编辑树项。
在对话框编辑器中指定 Edit Labels 属性为 True,或增加样式 TVS_EDITLABELS。

响应 TVN_BEGINLABELEDIT 以指定某项是否允许被编辑;
响应 TVN_ENDLABELEDIT 以指定编辑后的文本。
单击树项或调用 EditLabel 以开始编辑。

具体参照 MSDN,有很详细的说明。