15 мая 2023 года "Исходники.РУ" отмечают своё 23-летие!
Поздравляем всех причастных и неравнодушных с этим событием!
И огромное спасибо всем, кто был и остаётся с нами все эти годы!

Главная Форум Журнал Wiki DRKB Discuz!ML Помощь проекту


Свертывание всех ветвей

У Вас когда-нибудь был опыт исследования большого дерева, когда в попытках найти нужную ветвь Вы теряли уйму времени, перебирая, открывая и закрывая множество элементов дерева. Одним из выходов из такой ситуации будет свертывание всех ветвей и, если надо, начало поиска по новому. Ниже приводится код который поможет Вам это сделать:

       
        // CollapseAll  - Collapses the complete outline.
        void CTreeCtrlX::CollapseAll()
        {
         HTREEITEM hti = GetRootItem();
         do{
                CollapseBranch( hti );
            }while( (hti = GetNextSiblingItem( hti )) != NULL );
        }


        

Принцип действия таков: проход по всем корневым ветвям и свертывание их стандартными методами.

 

Источник: ProtoSphere