Многоуровневый список

В этом примере показаны два способа создания многоуровневых списков. Первый способ создает массив ячеек, который моделирует многоуровневый список и добавляет массив ячеек к документу. Второй способ программно создает многоуровневый список путем создания объектов List и ListItem.

Setup

Импортируйте пакеты DOM так, чтобы не использовать полные имена классов.

import mlreportgen.dom.*

Список массивов ячеек

Простой список

Простой список может быть представлен как простой массив ячеек, где элементы массива ячеек используются для создания элементов списка. Чтобы создать этот простой список:

Создайте этот массив ячеек.

simpleCellArray = { ...
    'a', ...
    'b', ...
    'c', ...
    'd'};

Добавьте массив ячеек к Document объект. Чтобы создать HTML, замените «PDF» на «html». Чтобы создать отчет Word, замените «PDF» на «docx».

d = Document("cell_simple_list", "pdf");
append(d, simpleCellArray);
close(d);
rptview(d);

Двухуровневый список

Двухуровневый список может быть представлен как массив ячеек, где один или несколько элементов являются камерами. Чтобы создать этот двухуровневый список, выполните следующие действия.

Создайте этот массив ячеек:

twoLevelCellArray = { ...
    'a', ...
    'b', ...
    { ...
        '1', ...
        '2', ...
        '3', ...
        '4' ...
    }, ...
    'c', ...
    'd'};        

Добавьте двухуровневый массив ячеек к Document объект. Чтобы создать HTML, замените «PDF» на «html». Чтобы создать отчет Word, замените «PDF» на «docx».

d = Document("cell_two_level_list", "pdf");
append(d, twoLevelCellArray);
close(d);
rptview(d);

Трехуровневый список

Трехуровневый список может быть представлен как вложенный массив ячеек глубиной три уровня. Чтобы создать этот трехуровневый список, выполните следующие действия.

Создайте этот массив ячеек:

threeLevelCellArray = {
    'a', ...
    'b', ...
    { ...
        '1', ...
        { ...
            'a', ...
            'b', ...
            'c', ...
            'd' ...
        }, ...
        '2', ...
        '3', ...
        '4' ...
    }, ...
    'c', ...
    'd'};

Добавьте трехуровневый массив ячеек к Document объект. Чтобы создать HTML, замените «PDF» на «html». Чтобы создать отчет Word, замените «PDF» на «docx».

d = Document("cell_three_level_list", "pdf");
append(d, threeLevelCellArray);
close(d);
rptview(d);

Чтобы создать еще более глубокие многоуровневые списки, добавьте больше вложенных массивов ячеек, чтобы представлять внутренние списки.

Программный список

Простой список

Простой список можно создать, создав ListItem объекты и добавление их к объекту OrderedList или UnorderedList. Для следующего простого неупорядоченного списка:

Создание ListItem объекты.

itemA = ListItem('a');
itemB = ListItem('b');
itemC = ListItem('c');
itemD = ListItem('d');

Добавьте ListItem объекты для UnorderedList объект.

unorderedList = UnorderedList();
append(unorderedList, itemA);
append(unorderedList, itemB);
append(unorderedList, itemC);
append(unorderedList, itemD);

Добавьте список к Document объект. Чтобы создать HTML, замените «PDF» на «html». Чтобы создать отчет Word, замените «PDF» на «docx».

d = Document("prog_simple_list", "pdf");
append(d, unorderedList);
close(d);
rptview(d);

Двухуровневый список

Двухуровневый список можно создать, добавив любой из OrderedList или UnorderedList объект родительскому элементу L ist Объект. Для следующего двухуровневого списка:

Создайте неупорядоченный список второго уровня с помощью массива ячеек. Чтобы создать HTML, замените «PDF» на «html». Чтобы создать отчет Word, замените «PDF» на «docx». Для отчета Word смешение неупорядоченных и упорядоченных списков может привести не к лучшим результатам. См. пользовательский пример списка стилей слов.

secondLevelList = UnorderedList({ ...
    '1', ...
    '2', ...
    '3', ...
    '4'});

Создайте список первого уровня.

itemA = ListItem('a');
itemB = ListItem('b');
itemC = ListItem('c');
itemD = ListItem('d');

firstLevelList = OrderedList();
append(firstLevelList, itemA);
append(firstLevelList, itemB);
append(firstLevelList, secondLevelList); % Not a ListItem, but an OrderedList
append(firstLevelList, itemC);
append(firstLevelList, itemD);

Добавьте список к Document объект.

d = Document("prog_two_level_list", "pdf");
append(d, firstLevelList);
close(d);
rptview(d);

Трехуровневый список

Трехуровневый список можно создать, добавив двухуровневый список к родительскому элементу List Объект. Для следующего трехуровневого списка:

Составьте список третьего уровня.

thirdLevelList = UnorderedList({ ...
    '1', ...
    '2', ...
    '3', ...
    '4'});

Составьте список второго уровня.

secondLevelList = OrderedList({ ...
    'a', ...
    'b', ...
    thirdLevelList, ... % This is a List, the rest are ListItems.
    'c', ...
    'd'});

Составьте список первого уровня.

firstLevelList = OrderedList({ 
    'a', ...
    'b', ...
    secondLevelList, ...
    'c', ...
    'd'});

Добавьте список к Document объект. Чтобы создать отчет Word, замените «PDF» на «docx». Чтобы создать HTML, замените «PDF» на «html». Для отчета Word смешение неупорядоченных и упорядоченных списков может привести не к лучшим результатам. См. пользовательский пример списка стилей слов.

d = Document("prog_three_level_list", "pdf");
append(d, firstLevelList);
close(d);
rptview(d);

Чтобы создать еще более глубокие многоуровневые списки, добавьте List объекты к List объекты.

См. также

| | |

Похожие темы