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 markdown
- value: the name of the tab to open; defaults to the first tab
- lazy: a boolean, whether to lazily load the tab content. This is a convenience that wraps each tab in a- mo.lazycomponent.
 - 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.