Difference between revisions of "Tree.Array"
m (1 revision imported) |
|
(No difference)
|
Revision as of 07:54, 7 February 2021
[<Индекс значения (INT,STRING)>] (Получение или установка значения ветки) | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Применимо к объектам ветки и дерева. Использование синтаксиса массивов позволяет получить или изменить значение подчиненной ветки дерева по его индексу (аргументом является число), либо наименованию (аргументом является строка). Для дерева, фрагмент <Дерево>[<Аргумент 1>,<Аргумент 2>,...]
не равнозначен фрагменту <Дерево>[<Аргумент 1>][<Аргумент 2>,...]
, так как в первом случае первый аргумент будет использован для нахождения ветки, а не значения, а второй для нахождения значения внутри этой ветки (<Дерево>.ByIndex(<Аргумент 1>).Get(<Аргумент 2>)...
), а во втором случае, аргумент используется для нахождения значения и дальнейшие аргументы будут применены к объекту, полученному из таблицы (<Дерево>.Get(<Аргумент 1>)...
).
Синтаксис
Tree[<Индекс или наименование значения подчиненной ветки (INT,STRING)>]:<Значение>
Аргументы
<Индекс или наименование значения подчиненной ветки (INT,STRING)>
- Индекс получаемого или устанавливаемого значения подчиненной ветки дерева, может иметь следующие типы:- число: ветка значения будет найдено по ее числовому индексу (начиная с индекса 1). При получении значения будет выполнена операция, соответствующая фрагменту
<Дерево>.Get(<Индекс>)
или<Дерево>.ByIndex(<Индекс>)
(в зависимости от наличия следующего аргумента), при установке значения, операция, соответствующая фрагменту<Дерево>.Set(<Индекс>,<Значение>)
. - строка: ветка значения будет найдено по ее наименованию. При получении значения будет выполнена операция, соответствующая фрагменту
<Дерево>.GetByName(<Наименование>)
или<Дерево>.FindByName(<Наименование>)
(в зависимости от наличия следующего аргумента), при установке значения, операция, соответствующая фрагменту<Дерево>.SetByName(<Наименование>,<Значение>)
. Если наименование значение не найдено, будет возвращено или добавлено пустое значение.
- число: ветка значения будет найдено по ее числовому индексу (начиная с индекса 1). При получении значения будет выполнена операция, соответствующая фрагменту
Примеры
aTree:=Tree.Create(); aTree.Add(List.Create(132),"Ветка 1").Add(2,"Ветка 1.1"); aTree.Add(3,"Ветка 2"); //Будет выведено 2, соответствует операции aTree.ByIndex(1).Get(1) Message("Значение ветки 1.1: "+aTree[1,1]); //Будет выведено 132, соответствует операции aTree.Get(1).Get(1) Message("Значение списка: "+aTree[1][1]); //Ветка получит новое значение "Проверка" (предыдущее было 3), соответствует операции aTree.SetByName("Ветка 2","Проверка") aTree["Ветка 2"]:="Проверка";