BCG项目树结构多选删除功能实现总结

本文介绍如何在树视图中实现多选功能,并通过遍历树的节点来删除已选择的节点。具体步骤包括设置多选风格及实现删除功能的代码示例。
1、设置多选风格
在OnCreate(LPCREATESTRUCT lpCreateStruct)函数中设置多选风格
DWORD dwExtendedStyle=m_wndFileView.GetExtendedStyle()
|TVS_EX_DOUBLEBUFFER|TVS_EX_DRAWIMAGEASYNC|TVS_EX_MULTISELECT;
m_wndFileView.SetExtendedStyle(dwExtendedStyle,dwExtendedStyle);

2、多选后右键删除所选中的结点
思路:从树的第一个结点进行遍历,判断结点是否被选中,遇到选中的结点则进行删除,直到遍历完所有的结点。完成删除后再对树结构进行刷新。
void CFileView::OnDeleteAll()
{
for ( HTREEITEM hTreeItem =m_wndFileView.GetRootItem(); hTreeItem!=NULL; hTreeItem = m_wndFileView.GetNextVisibleItem( hTreeItem ) )
if (m_wndFileView.GetItemState( hTreeItem, TVIS_SELECTED ) & TVIS_SELECTED)
{
OnDelete(hTreeItem); //删除结点具体数据信息
}
FillFileView(); //删除完成后刷新树结构
}
注:CViewTree m_wndFileView;其中CViewTree 类继承的是CTreeCtrl类


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值