exponenta event banner

класс mlreportgen.report.HTMLModeyTabs

Пакет: mlreportgen.report
Суперклассы: mlreportgen.report.Reporter

Создание панелей с вкладками

Описание

Один mlreportgen.report.HTMLModuleTabs репортер добавляет в отчет HTML виджет, состоящий из стека панелей с вкладками (вкладок модулей). При выборе вкладки отображается содержимое панели. Этот репортер используется для отображения связанной информации в компактной форме.

Примечание

Использовать HTMLModuleTabs только с HTML-отчетами или однофайловыми HTML-отчетами.

mlreportgen.report.HTMLModuleTabs класс является handle класс.

Атрибуты класса

HandleCompatible
true

Сведения об атрибутах класса см. в разделе Атрибуты класса.

Создание

Описание

пример

tabsObj = mlreportgen.report.HTMLModuleTabs() создает пустой HTMLModuleTabs репортер. Необходимо указать метки вкладок и содержимое с помощью свойства TableData. Добавление пустого HTMLModuleTabs в отчете возникает ошибка.

tabsObj = mlreportgen.report.HTMLModuleTabs(Name,Value) задает свойства, используя пары имя-значение. Можно указать несколько аргументов пары имя-значение в любом порядке. Заключите каждое имя свойства в одинарные или двойные кавычки.

Свойства

развернуть все

Метка табуляции и содержимое панели, указанное как массив структур со следующими полями:

  • Label - метка табуляции, заданная как вектор символа, скаляр строки или mlreportgen.dom.Text объект. Используйте уникальную метку для каждой вкладки.

  • Content - Содержимое панели, указанное как одно из следующих значений:

    • Вектор символов или строковый скаляр

    • Объект DOM

    • Объект отчета API Report

    Примечание

    Чтобы включить несколько объектов DOM на одной вкладке, установите Content в поле mlreportgen.dom.Group объект, содержащий объекты DOM.

Источник шаблона для этого репортера, указанный одним из следующих способов:

  • Вектор символов или строковый скаляр, указывающий путь к файлу, содержащему шаблон для этого репортера

  • Репортер или отчет, шаблон которого используется для этого репортера или библиотека шаблонов которого содержит шаблон для этого репортера

  • Документ DOM или деталь документа, шаблон которого используется для этого репортера или библиотека шаблонов которого содержит шаблон для этого репортера

Для HTML-отчета тип шаблона должен быть htmtx. Для однофайлового отчета тип должен быть htmt.

Имя шаблона для этого репортера, указанного как вектор символов или скаляр строки. Шаблон для этого репортера должен находиться в библиотеке шаблонов источника шаблона (TemplateSrc) для этого репортера.

Цель гиперссылки для этого репортера, указанная как вектор символов или скаляр строки, указывающий идентификатор цели связи, или mlreportgen.dom.LinkTarget объект. Вектор символов или строковое скалярное значение преобразуется в LinkTarget объект. Цель ссылки непосредственно предшествует содержимому этого репортера в выходном отчете.

Методы

развернуть все

Примеры

свернуть все

В этом примере создается однофайловый HTML-отчет, содержащий отдельную панель с вкладками для каждой системной схемы модели Simulink ®.

В этом примере требуются Generator™ отчета Simulink и Simulink.

Создайте отчет и главу.

rpt = slreportgen.report.Report("MyReport","html-file");
open(rpt);

ch = mlreportgen.report.Chapter("slrgex_sf_car System Diagrams Tabbed Image Gallery");

Загрузите модель и найдите все диаграммы в модели.

model_name = "slrgex_sf_car";
load_system(model_name);

finder = slreportgen.finder.DiagramFinder(model_name);
results = find(finder);

Создание mlreportgen.report.HTMLModuleTabs reporter, чтобы содержать вкладки, соответствующие диаграммам. Укажите метки вкладок и содержимое для каждой системной схемы. Метка вкладки - это имя системы. Содержимое вкладки является снимком системной схемы.

moduleTabs = mlreportgen.report.HTMLModuleTabs();
for result = results
    moduleTabs.TabsData(end+1).Label = result.Name;
    
    diag = result.getReporter();
    moduleTabs.TabsData(end).Content = mlreportgen.dom.Image(diag.getSnapshotImage(rpt));
end

Добавить HTMLModuleTabs сообщите об этой главе и добавьте эту главу в отчет. Закройте и просмотрите отчет.

add(ch,moduleTabs);
add(rpt,ch);

close(rpt);
rptview(rpt);

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

The first tab, for the top-level diagram, has a white background. The tab labels for the other diagrams are visible and have a gray background.

В этом примере создаются панели с вкладками, в которых каждая панель содержит различные типы содержимого. В примере также показано, как включить несколько объектов DOM в содержимое панели с вкладками путем группирования объектов DOM в mlreportgen.dom.Group объект.

Создание отчета и главы.

rpt = mlreportgen.report.Report("MyReport","html");
open(rpt);
ch = mlreportgen.report.Chapter("Tabs with Different Types of Content");

Создание HTMLModuleTabs reporter и укажите метку и содержимое для каждой панели с вкладками. Для последней панели создайте Group объект, содержащий абзац и таблицу.

% Create group from a paragraph and a table
p = mlreportgen.dom.Paragraph('This is a table:');
t = mlreportgen.dom.Table(magic(2));
grp = mlreportgen.dom.Group;
append(grp,p);
append(grp,t);

% Create cell arrays for the labels and content
labels = {'Text','Paragraph','Link','List','Image','Group'};
content = {"This tab contains text as a string.",...
    mlreportgen.dom.Paragraph('This tab contains content using a DOM Paragraph.'),...
    mlreportgen.dom.ExternalLink("http://www.mathworks.com/","MathWorks"),...
    mlreportgen.dom.UnorderedList(["Coffee", "Tea", "Milk"]),...
    mlreportgen.dom.Image(which("ngc6543a.jpg")),...
    grp};

% Create a structure from the labels and content
tabsdata = struct('Label',labels,'Content',content);

% Create the HTMLModuleTabs reporter
modTabsObj = mlreportgen.report.HTMLModuleTabs('TabsData',tabsdata);

Добавить HTMLModuleTabs репортер доклада. Закройте и просмотрите отчет.

add(ch,modTabsObj);
add(rpt,ch);
close(rpt);
rptview(rpt);

Откроется отчет с содержимым первой вкладки.

The first tab, for the text content, has a white background to indicate that it is selected. The other tab labels are visible and have a gray background.

Перейдите на вкладку Группа, чтобы увидеть, что она содержит абзац и таблицу.

The Group tab shows the text "This is a table" and a table with the output of magic(2).

Представлен в R2020a