Этот пример показывает два способа создать многоуровневые списки. Первый путь создает массив ячеек, который моделирует многоуровневый список и добавляет массив ячеек к документу. Второй путь программно создает многоуровневый список путем построения объектов Списка и 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
возразите против родительского List
Объект. Для следующего двухуровневого списка:
Создайте второй уровень, неупорядоченный список при помощи массива ячеек. Чтобы создать отчет 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