Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Плещёв ВУМИП 2012-07-06.doc
Скачиваний:
66
Добавлен:
13.05.2015
Размер:
9.35 Mб
Скачать

2.3.9.7. Дерево элементов (TreeView)

Компонент (панельWin32) отображает свои эле­мен­ты в виде дерева, аналогичного структуре ка­талогов, выводимого проводникомWindows. Де­ре­во фор­мируется редактором вызываемого при формиро­ва­­нии значения свойстваItems, анало­гич­ным ре­дак­­­торуListView(число уровней любое). Дерево состоит из узлов ти­­­паTTreeNode. Многие свойства дерева совпадают со свой­ствамиListView.

Специфичные свойства дерева

AutoExpand‑ при перемещении фокуса узлы сворачиваются и разво­ра­чи­ваются автоматически.

ChangeDelay‑ пауза в миллисекундах от выделения узла до генерации сообщенияOnChange.

Indent‑ расстояние между узлами в пикселях.

ShowButtons‑ узлы отображаются в виде кнопок с символами «+», «‑«.

ShowLines, ShowRoot‑ вывод линий между узлами и уровнями дерева.

StateImages‑ список картинок для отображения состояния узлов.

ToolsTips‑ разрешается вывод всплывающей подсказки для каждого узла.

Специфичные свойства узла дерева

AbsoluteIndex‑ абсолютный номер узла в дереве по уровням (колонками).

Count, Text‑ число потомков узла, выводимый в узле текст.

Data‑ ссылка типаPointerна объект, связанный с элементом.

Deleting, Expanded, Focused‑ узел удаляется, развернут, в фокусе.

HasChildren, IsVisible, Selected‑ узел с потоками, виден, выделен.

ImageIndex, Index‑ номер картинки; узла в списке потомков родителя.

Item, Level‑ массив узлов потомков узла, номер уровня узла.

SelectedIndex‑ номер картинки, выделенного узла.

Специфичные методы

AlphaSort,FullCollapse, FullExpand‑ сортировка, сжатие, раскрытие узлов.

Collaps(R)/Expand(R)‑ сжатие/разворот узла и его потомков приR=True.

Delete, DeleteChildren‑ удаление узла и его потомков только потомков.

Get First/Last Child:TtreeNode‑ возвращение первого/последнего потомка.

Get Next/Prev:TTreeNode‑ возвращает следующий/предыдущий узел.

Get Next/Prev Child (V : TTreeNode) : TtreeNode‑ возвращает следую­щий/пре­дыдущий узел по отношению к узлу‑потомкуV.

Get Next/Prev Sibling/Visible : TtreeNode‑ возвращает следующий/пре­ды­ду­щий любой/видимый узел на уровне текущего узла.

HasAsParent(V:TTreeNode)‑ возвращаетTrue, еслиVесть родитель узла.

IndexOf(V:TTreeNode)‑ возвращает номер узла в списке потомков узлаV.

MakeVisible‑ разворачивает узлы так, чтобы текущий узел стал видимым.

Пример просмотра всего дерева:

Procedure TForm1.Button1Click(Sender: TObject);

Var C:TTreeNode; Begin C:=TreeView1.Items.GetFirstNode; //первый узел

While С<>Nil Do Begin Label1.Caption:=C.Text; C:=C.GetNext; End; End;

2.3.10. Системные компоненты

2.3.10.1. Таймер (Timer)

Невизуальный компонент таймер (панельSystem) для организации выполнения процедур, связанных с интервалами времени.

Специфичные свойства

Enabled‑ включение/выключение таймера (True/False).

Interval‑ интервал времени в миллисекундах, по истечении, которого возникает очередное событиеOnTimer.

Примервывода текущего времени в строке статуса (п.2.3.1.3):

Procedure TForm1.Timer1Timer(Sender: TObject); //обработчик OnTimer

Var T:TDateTime; Begin Timer1.Interval:=1000; //интервал одна секунда

T:=Time;Statusbar1.SimpleText:=TimeToStr(T);{простая строка статуса}

Еnd;