Skip to main content

DataRow

Examples

See these.

Row configuration and cell data for a DataTable.

One row configuration must be provided for each row to display in the table.

The data for this row of the table is provided in the cells property.

Inherits: Control

Properties

Events

Properties

cellsclass-attributeinstance-attribute

cells: Annotated[list[DataCell], V.visible_controls(min_count=1)] = field(default_factory=list)

The data for this row: a list of DataCell controls.

Note

There must be exactly as many cells as there are visible columns in the table.

Raises:

  • ValueError - If it does not contain at least one visible DataCell.

colorclass-attributeinstance-attribute

color: Optional[ControlStateValue[ColorValue]] = None

The color of this row.

By default, the color is transparent unless selected. Selected rows has a grey translucent color.

The effective color can depend on the ControlState state, if the row is selected, pressed, hovered, focused, disabled or enabled. The color is painted as an overlay to the row. To make sure that the row's InkWell is visible (when pressed, hovered and focused), it is recommended to use a translucent color.

selectedclass-attributeinstance-attribute

selected: bool = False

Whether the row is selected.

If on_select_change is non-null for any row in the table, then a checkbox is shown at the start of each row. If the row is selected (True), the checkbox will be checked and the row will be highlighted.

Otherwise, the checkbox, if present, will not be checked.

Events

on_long_pressclass-attributeinstance-attribute

on_long_press: Optional[ControlEventHandler[DataRow]] = None

Called when this row is long-pressed.

If a DataCell in the row has its flet.DataCell.on_tap, flet.DataCell.on_double_tap, flet.DataCell.on_long_press, flet.DataCell.on_tap_cancel or flet.DataCell.on_tap_down callback defined, that callback behavior overrides the gesture behavior of the row for that particular cell.

on_select_changeclass-attributeinstance-attribute

on_select_change: Optional[ControlEventHandler[DataRow]] = None

Called when the user selects or unselects a selectable row.

If this is not null, then this row is selectable. The current selection state of this row is given by selected.

If any row is selectable, then the table's heading row will have a checkbox that can be checked to select all selectable rows (and which is checked if all the rows are selected), and each subsequent row will have a checkbox to toggle just that row.

A row whose on_select_change callback is null is ignored for the purposes of determining the state of the "all" checkbox, and its checkbox is disabled.

If a DataCell in the row has its flet.DataCell.on_tap callback defined, that callback behavior overrides the gesture behavior of the row for that particular cell.