Header¶
A simple header widget which docks itself to the top of the parent container.
Note
The application title which is shown in the header is taken from the title
and sub_title
of the application.
- Focusable
- Container
Example¶
The example below shows an app with a Header
.
This example shows how to set the text in the Header
using App.title
and App.sub_title
:
from textual.app import App, ComposeResult
from textual.widgets import Header
class HeaderApp(App):
def compose(self) -> ComposeResult:
yield Header()
def on_mount(self) -> None:
self.title = "Header Application"
self.sub_title = "With title and sub-title"
if __name__ == "__main__":
app = HeaderApp()
app.run()
Reactive Attributes¶
Name | Type | Default | Description |
---|---|---|---|
tall |
bool |
True |
Whether the Header widget is displayed as tall or not. The tall variant is 3 cells tall by default. The non-tall variant is a single cell tall. This can be toggled by clicking on the header. |
Messages¶
This widget posts no messages.
Bindings¶
This widget has no bindings.
Component Classes¶
This widget has no component classes.
textual.widgets.Header
class
¶
Bases: Widget
A header widget with icon and clock.
Parameters
Name | Type | Description | Default |
---|---|---|---|
show_clock |
bool
|
|
False
|
name |
str | None
|
The name of the header widget. |
None
|
id |
str | None
|
The ID of the header widget in the DOM. |
None
|
classes |
str | None
|
The CSS classes of the header widget. |
None
|
screen_sub_title
property
¶
The sub-title that this header will display.
This depends on Screen.sub_title
and App.sub_title
.
screen_title
property
¶
The title that this header will display.
This depends on Screen.title
and App.title
.
tall
class-attribute
instance-attribute
¶
Set to True
for a taller header or False
for a single line header.