Hauptinhalt

mlreportgen.dom.TableRow Class

Namespace: mlreportgen.dom

Description

Use an object of the mlreportgen.dom.TableRow class to create a table row.

To see what DOM objects you can append an mlreportgen.dom.TableRow object to, see Append mlreportgen.dom.TableRow object to DOM class object.

The mlreportgen.dom.TableRow class is a handle class.

Class Attributes

ConstructOnLoad
true
HandleCompatible
true

For information on class attributes, see Class Attributes.

Creation

Description

tableRowObj = TableRow creates an empty table row.

example

Properties

expand all

Height of this table row, specified as a character vector or string scalar that contains a number followed by an abbreviation for a unit of measurement. For example, "0.5in" specifies one-half inch. Valid abbreviations are:

  • "px" — Pixels

  • "cm" — Centimeters

  • "in" — Inches

  • "mm" — Millimeters

  • "pc" — Picas

  • "pt" — Points

You can also specify pixels by omitting the unit. For example, "5" specifies 5 pixels.

If the Style property of this table row includes an mlreportgen.dom.RowHeight format object, the Height property is set to the height specified by the format object.

If you set the Height property to a height value, a RowHeight object with the specified height is created and added to the Style property of the row, or is used to replace an existing RowHeight object in the Style property. The Type of the new RowHeight object is "exact". This Type value causes Microsoft® Word to generate a row of the specified height and truncate content that does not fit. HTML and PDF viewers create a row of at least the specified height and adjust the row height to accommodate the content.

Note

If you add an mlreportgen.dom.Height object to the Style property, it is converted to an mlreportgen.dom.RowHeight object with the Type set to "atleast". This Type value causes HTML and PDF viewers and Microsoft Word to create a row of at least the specified height and adjust the row height to accommodate the content.

Example: "0.5in"

Table entries in this row, specified as an array of mlreportgen.dom.TableEntry objects. Use this property to access the table entries in this row. For example, this code accesses element 2 in row 2:

t = Table({"e11", "e12"; "e21", "e22"});
elem22 = t.row(2).Entries(2);

You can also access element 2 in row 2 by using the entry method of the mlreportgen.dom.Table class. For example:

t = Table({"e11", "e12"; "e21", "e22"});
elem22 = entry(t,2,2);

Once you access the TableEntry object that corresponds to a table entry, you can format the entry by setting properties of the object. See Format a Table Entry.

This property is read-only.

Number of table entries in this row, specified as an integer. This property is read-only.

Name of stylesheet-defined style, specified as a character vector or string scalar. The style name is the name of a style specified in the style sheet of the document or document part to which this element is appended. The specified style defines the appearance of this element in the output document unless the formats specified by the Style property of this element override it. To learn more about using style sheets, see Use Style Sheet Styles.

Note

Microsoft Word reports ignore style names that are not defined in the document template. For more information on Microsoft Word templates, see Templates for DOM API Report Programs.

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Data Types: char | string

Table row style, specified as a cell array of DOM format objects. The formats override the corresponding formats defined by the stylesheet style specified by the StyleName property.

You can specify the row height by adding an mlreportgen.dom.RowHeight or an mlreportgen.dom.Height object to the Style property. An mlreportgen.dom.Height object is converted to an mlreportgen.dom.RowHeight object with the type set to "atleast".

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Data Types: cell

Custom attributes of the document element, specified as an array of mlreportgen.dom.CustomAttribute objects. The custom attributes must be supported by the output format of the document element to which this object is appended.

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Parent of this object, specified as a document element object. A document element must have only one parent.

Attributes:

GetAccess
public
SetAccess
private
NonCopyable
true

Children of this object, specified as an array of document element objects. This property contains the document element objects appended using the append method.

Attributes:

GetAccess
public
SetAccess
private
NonCopyable
true

Tag, specified as a character vector or string scalar. The DOM API generates a session-unique tag as part of the creation of this object. The generated tag has the form CLASS:ID, where CLASS is the object class and ID is the value of the Id property of the object. Use this value to help identify where an issue occurs during document generation.

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Data Types: char | string

Object identifier, specified as a character vector or string scalar. The DOM API generates a session-unique identifier when it creates the document element object.

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Data Types: char | string

Methods

expand all

Examples

collapse all

To add content to an empty table, append table entries to table rows and then append the table rows to the table. This example creates this two-by-two table:

Create a document and then create a table that has two columns.

import mlreportgen.dom.*

d = Document();
t = Table(2);

Create two table rows.

tr1 = TableRow();
tr2 = TableRow();

Create table entries that contain the content and append the table entries to the rows.

append(tr1,TableEntry('e11'));
append(tr1,TableEntry('e12'));
append(tr2,TableEntry('e21'));
append(tr2,TableEntry('e22'));

Append the table rows to the table.

append(t,tr1);
append(t,tr2);

Append the table to the document. Close and view the document.

append(d,t);
close(d);
rptview(d);

Use the Entries property of an mlreportgen.dom.TableRow object to access the mlreportgen.dom.TableEntry object that corresponds to the entry that you want to format. Format the entry by setting format properties of the TableEntry object or by adding format objects to the Style property of the object. This example changes the text color of the second entry of the second row to red.

import mlreportgen.dom.*
d = Document();
t = Table({'e11','e12';'e21','e22'});
t.row(2).Entries(2).Style = {Color('red')};
append(d,t);
close(d);
rptview(d);
    

In the resulting table, the text, e22, in the second entry of the second row is red.

Alternatively, you can access a table entry by using the entry method of the mlreportgen.dom.Table object that contains the entry. In the previous example, replace:

t.row(2).Entries(2).Style = {Color('red')};

with:

elem = entry(t,2,2);
elem.Style = {Color('red')};

Create a two-column table.

import mlreportgen.dom.*;
myReport = Document('myDoc','html');
table = Table(2);
table.Style = {Border('solid'),RowSep('solid'),ColSep('solid')};
table.TableEntriesStyle = {Width('2in'),HAlign('center')};

Create three table rows with entries. Append each entry to a row using append(row,te).

for i=1:3
    row = TableRow();
    te = TableEntry();
    append(te,Text([num2str(i) ' - 1']));
    append(row,te);
    te = TableEntry();
    append(te,Text([num2str(i) ' - 2']));
    append(row,te);
    append(table,row);
end

Append the table and display the report.

append(myReport,table);

close(myReport);
rptview(myReport.OutputPath);

More About

expand all

Tips

  • To avoid table formatting errors, create table rows that span the same number of cells, regardless of the number of table entries. For example, the first row in this table has two table entries. The first entry, Winter, spans two columns and the second entry, Spring, spans one column. The second row has three entries that each span one column.

    Table with two rows that have different numbers of cells but span the same number of columns.

    If you modify only the second row of the table so that the first two entries, Jaunary and February, each span two columns, and the last entry spans one column, the table format changes.

    The first row in the table has two entries. The second row has three entries and the last entry spans two rows.

Version History

Introduced in R2014b