В этом примере показаны два способа создания многоуровневых списков. Первый способ создает массив ячеек, который моделирует многоуровневый список и добавляет массив ячеек к документу. Второй способ программно создает многоуровневый список путем создания объектов List и ListItem.
Импортируйте пакеты 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
объекты.
mlreportgen.dom.Document
| mlreportgen.dom.ListItem
| mlreportgen.dom.OrderedList
| mlreportgen.dom.UnorderedList