C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 Раскрытие одной ветви полностью -- 3 метод (поправка к 1 методу) / TreeCtrl, TreeView / Элементы управления

Раскрытие одной ветви полностью -- 3 метод (поправка к 1 методу)

Есть мнение что код: if( ItemHasChildren( hti ) ) приведет к проблемам если hti==NULL, потому что hti может быть равно NULL если дерево не имело дочерних элементов. Можно переписать код 1 метода следующим образом:

       
// ExpandBranch - Expands a branch completely
// hti          - Handle of the tree item to expand
void CTreeCtrlX::ExpandBranch( HTREEITEM hti )
{
     => if( ItemHasChildren( hti ) && hti != NULL){
                Expand( hti, TVE_EXPAND );
                hti = GetChildItem( hti );
                do{
                        ExpandBranch( hti );
                }while( (hti = GetNextSiblingItem( hti )) ! 
                                                   = NULL );
        }
        EnsureVisible( GetSelectedItem() );
}
 

 

Источник: ProtoSphere