Files
textual/docs/widgets/data_table.md
Will McGugan f5e779c4c4 tabbed content widget (#2059)
* tabbed content widget

* TabbedContent widget and docs

* missing docs

* fix active

* doc fix

* test fix

* additional test

* test for render_str

* docstring

* changelog

* doc update

* changelog

* fix bad optimization

* Update docs/widgets/tabbed_content.md

Co-authored-by: Dave Pearson <davep@davep.org>

* fix for empty initial

* docstrings

* Update src/textual/widgets/_content_switcher.py

Co-authored-by: Dave Pearson <davep@davep.org>

* docstring

* remove log

* permit nested tabs

* renamed TabsCleared to Cleared

* added tests, fix types on click

* tests

* fix broken test

* fix for nested tabs

---------

Co-authored-by: Dave Pearson <davep@davep.org>
2023-03-18 10:38:41 +00:00

2.7 KiB

DataTable

A table widget optimized for displaying a lot of data.

  • Focusable
  • Container

Example

The example below populates a table with CSV data.

=== "Output"

```{.textual path="docs/examples/widgets/data_table.py"}
```

=== "data_table.py"

```python
--8<-- "docs/examples/widgets/data_table.py"
```

Reactive Attributes

Name Type Default Description
show_header bool True Show the table header
fixed_rows int 0 Number of fixed rows (rows which do not scroll)
fixed_columns int 0 Number of fixed columns (columns which do not scroll)
zebra_stripes bool False Display alternating colors on rows
header_height int 1 Height of header row
show_cursor bool True Show the cursor
cursor_type str "cell" One of "cell", "row", "column", or "none"
cursor_coordinate [Coordinate][textual.coordinate.Coordinate] Coordinate(0, 0) The current coordinate of the cursor
hover_coordinate [Coordinate][textual.coordinate.Coordinate] Coordinate(0, 0) The coordinate the mouse cursor is above

Messages

::: textual.widgets.DataTable.CellHighlighted

::: textual.widgets.DataTable.CellSelected

::: textual.widgets.DataTable.RowHighlighted

::: textual.widgets.DataTable.RowSelected

::: textual.widgets.DataTable.ColumnHighlighted

::: textual.widgets.DataTable.ColumnSelected

::: textual.widgets.DataTable.HeaderSelected

Bindings

The data table widget defines the following bindings:

::: textual.widgets.DataTable.BINDINGS options: show_root_heading: false show_root_toc_entry: false

Component Classes

The data table widget provides the following component classes:

::: textual.widgets.DataTable.COMPONENT_CLASSES options: show_root_heading: false show_root_toc_entry: false

See Also

  • [DataTable][textual.widgets.DataTable] code reference