Иллюстрированный самоучитель по Delphi 7 для профессионалов

Компоненты TTreeView и TListView

Эти компоненты известны каждому, кто хоть раз видел Windows 98 или Windows 2000. Именно на их базе создано ядро пользовательского интерфейса – оболочка Explorer, да и большинство других утилит Windows. Они включены в библиотеку ComCtl32.dll и доступны программистам.

Компонент TTreeView называют деревом (рис. 5.3).

Компонент TTreeView – правопреемник компонента TOutiine, разработанного Borland еще для Delphi 1 и предназначен для отображения иерархической информации. Его "сердцем" является свойство:

property Items: TTreeNodes;

Иллюстрированный самоучитель по Delphi 7 для профессионалов › Элементы управления Win32 › Компоненты TTreeView и TListView
Рис. 5.3. Внешний вид компонента TTreeView

Данное свойство – это список всех вершин дерева, причем список, обладающий дополнительными полезными свойствами. Каждый из элементов списка – это объект типа TTreeNode. Свойства его сведены в табл. 5.3.

Таблица 5.3. Список свойств объекта TTreeNode.

Объявление Описание
property HasChildren: Boolean; Равно True, если узел имеет дочерние узлы
property Count: Integer; Счетчик числа дочерних узлов данного узла
property Item [Index: Integer]: TTreeNode; Список дочерних узлов
property Parent: TTreeNode; Ссылка на объект – родительский узел (верхнего уровня)
property Level: Integer; Уровень, на котором находится узел. Для корневого узла это свойство равно 0; его потомки имеют значение Level=1 и т. д.
property Text: string; Текст узла
property Data: Pointer; Данные, связанные с узлом
property TreeView: TCustomTreeView; Ссылка на компонент TTreeView, в котором отображается данный узел
property Handle: HWND; Дескриптор окна компонента TTreeView, в котором отображается данный узел
property Owner: TTreeNodes; Ссылка на компонент TTreeNodes, которому принадлежит данный узел
property Index: Longint; Индекс узла в списке своего родителя
property IsVisible: Boolean; Равно True, если узел видим (все его родительские узлы развернуты)
property Itemld: HTreeltem; Дескриптор узла (применяется при вызове некоторых методов)
property Absolutelndex: Integer; Абсолютный индекс узла в списке корневого узла
property Imagelndex: Integer; Индекс картинки, соответствующей невыбранному узлу в нормальном состоянии
property Selectedlndex: Integer; Индекс картинки, соответствующей выбранному узлу
property Overlaylndex: Integer; Индекс картинки, которая может накладываться поверх основной
property Statelndex: Integer; Индекс дополнительной картинки, отражающей состояние узла
property Selected: Boolean; Равно True, если данный узел выбран пользователем
property Focused: Boolean; Равно True, если данный узел выбран пользователем для редактирования текста узла
property Expanded: Boolean; Равно True, если данный узел развернут (показываются его дочерние узлы)
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.