Tabs¶
- class marimo.ui.tabs(tabs: dict[str, object], value: str | None = None, lazy: bool = False, *, label: str = '', on_change: Callable[[str], None] | None = None)¶
Display objects in a tabbed view.
Examples.
Show content in tabs:
tab1 = mo.vstack([ "slider": mo.ui.slider(1, 10), "text": mo.ui.text(), "date": mo.ui.date() ]) tab2 = mo.md("You can show arbitrary content in a tab.") tabs = mo.ui.tabs({ "Heading 1": tab1, "Heading 2": tab2 })
Control which tab is selected:
tabs = mo.ui.tabs( {"Heading 1": tab1, "Heading 2": tab2}, value="Heading 2" )
Tab content can be lazily loaded:
tabs = mo.ui.tabs( {"Heading 1": tab1, "Heading 2": expensive_component}, lazy=True )
Attributes.
value
: A string, the name of the selected tab.
Initialization Args.
tabs
: a dictionary of tab names to tab content; strings are interpreted as markdownvalue
: the name of the tab to open; defaults to the first tablazy
: a boolean, whether to lazily load the tab content. This is a convenience that wraps each tab in amo.lazy
component.
Public methods
Inherited from
UIElement
form
([label, bordered, loading, ...])Create a submittable form out of this
UIElement
.send_message
(message, buffers)Send a message to the element rendered on the frontend from the backend.
Inherited from
Html
batch
(**elements)Convert an HTML object with templated text into a UI element.
center
()Center an item.
right
()Right-justify.
left
()Left-justify.
callout
([kind])Create a callout containing this HTML element.
style
(style)Wrap an object in a styled container.
Public Data Attributes:
Inherited from
UIElement
value
The element’s current value.
Inherited from
Html
text
A string of HTML representing this element.