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類