Copyright © 2010 Promsite. All Rights Reserved.
стр. 4
Изучение компонента TTreeView, часть I

Относительные методы позиционирования

       Для позиционирования на 1-м корневом узле надо использовать метод GetFirstNode:

       TTreeNode* firstRoot = TreeView1->Items->GetFirstNode();

       Т.к. все корневые узлы являются близнецами по отношению друг к другу, т.е. лежат на одном уровне, то для позиционирования на другом корневом узле можно использовать метод GetNextSibling. Следующий код добавляет в ListBox имена корневых узлов:

       TTreeNode* rootNode = TreeView1->Items->GetFirstNode();
       while ( rootNode )
       {
       ListBox1->Items->Add(rootNode->Text);
       rootNode = rootNode->getNextSibling();
       }

       Метод GetPrevSibling позиционирует на предыдущем узле-близнеце в пределах своей группы узлов-близнецов, если эти методы не находят предыдущий или следующий узел, то возвращается NULL. Т.о. перед выполнением каких-либо манипуляций с узлов следует проверить его на NULL.

       В дополнение к методам для работы с узлами-близнецами есть ещё четыре метода для работы с потомками узлов: getFirstChild, GetNextChild, GetPrevChild, и GetLastChild. Ниже два примера - в одном обход узлов идет сверху вниз, в другом наоборот:

       TTreeNode* team = alEast->getFirstChild();
       while ( team )
       {
         ListBox1->Items->Add(team->Text);
       team = alEast->GetNextChild(team);
       }
       TTreeNode* team = alEast->GetLastChild();
       while ( team )
       {
       ListBox1->Items->Add(team->Text);
         team = alEast->GetPrevChild(team);
       }

А вот здесь другой способ обхода:

       if ( alEast->HasChildren )
       {
         ListBox1->Items-> Add("Here are the teams in the AL East:");
       for ( int team = 0; team < alEast->Count;
           team++ )
          ListBox1->Items->
              Add("  " + alEast->Item[team]->Text);
       }
       else
       ListBox1->Items-> Add("There are no teams in the AL East!");




P  R  O  M  S  I  T  E
Статьи по С++Builder 6
страницы: 1   2   3   4   5   6   7   8
стр: 1   2   3   4   5   6   7   8 
стр. 4

Для отображения Облака ссылок
необходим
Adobe Flash Player 9
или выше.