Difference between revisions of "Table.Levels.Add"
m (1 revision imported) |
|
(No difference)
|
Latest revision as of 08:53, 7 February 2021
Add (Работа с уровнями) | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Функция добавляет визуальный уровень к текущему, либо к одному из детей текущего уровня, если начальная и конечная позиции располагаются полностью внутри дочернего уровня. Если уровень полностью вмещает один или более существующих уровней, они становятся его дочерними уровнями. Внимание: Объект уровня таблицы является псевдообъектом и хранит в себе набор индексов с начального уровня до текущего. Это означает, что добавление или удаление уровней может изменить индексацию объектов и сделать все существующие объекты адресуемых уровней недействительными. Объекты могут адресовать совсем другие уровни, либо вызывать исключение при обращении, поэтому, не рекомендуется хранить или передавать в другие функции такие объекты.
Синтаксис
Table.Levels.Add(<Направление уровня (INT)>,<Начальная позиция уровня (INT)>,<Конечная позиция уровня (INT)>)
Аргументы
<Направление уровня (INT)>
- Аргумент задает положение итогов добавляемого уровня, возможны следующие значения:- 0 -- итоги располагаются в начале уровня (в левом столбце для горизонтальных уровней, в верхней строке для вертикальных)
- 1 -- итоги располагаются в конце уровня (в правом столбце для горизонтальных уровней, в нижней строке для вертикальных)
<Начальная позиция уровня (INT)>
- Номер начальной строки или столбца уровня.<Конечная позиция уровня (INT)>
- Номер конечной строки или столбца уровня.
Примеры
//Пример добавления вертикальных уровней в таблицу Т //Несмотря на то, что сначала добавляются уровни со строками "v4", в момент добавления уровней со строками "v3", уровни "v4" становятся дочерними. While З.Next(1) Do ... //Вывод уровня 1 Т.CopyByX("v2",1); ... //Запомним высоту строки "v2" уровня 1 НачВыс:=Т.Height(); While З.Next(2) Do ... //Вывод уровня 2 Т.CopyByX("v3",1); ... //Запомним высоту строки "v3" уровня 2 НачВыс2:=Т.Height(); While З.Next(3) Do ... //Вывод уровня 3 Т.CopyByX("v4",1); ... EndDo; //Добавим вертикальный уровень, в который будет складываться строки "v4" Т.Levels(0).Add(0,НачВыс2,Т.Height()); EndDo; //Добавим вертикальный уровень, в который будет складываться строки "v3" Т.Levels(0).Add(0,НачВыс,Т.Height()); EndDo; //Закроем добавленные уровни (кроме строк "v2") перед выводом таблицы на экран Т.Levels(0).Close();