textual/docs/widgets/input.md
Will McGugan b0f5c35782
tabs widget (#2020)
* tabs widget

* click underline

* color tweak

* docs

* docs update

* expose Tab

* added remove_tab and clear

* fix cycling

* add animation

* docs

* changelog

* remove recompose

* docstrings

* Update docs/guide/actions.md

Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>

* Rodrigoed the tabs

* Update docs/widgets/tabs.md

Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>

* Update docs/widgets/tabs.md

Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>

* copy

* docstrings

* docstring

* docstring

* Apply suggestions from code review

Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>

* stop click

* docstring

* auto assign consistent IDs

* Apply suggestions from code review

Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>

* Document bindings

* document bindings

* Apply suggestions from code review

Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>

---------

Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
2023-03-13 14:39:15 +00:00

1.7 KiB

Input

A single-line text input widget.

  • Focusable
  • Container

Example

The example below shows how you might create a simple form using two Input widgets.

=== "Output"

```{.textual path="docs/examples/widgets/input.py" press="tab,D,a,r,r,e,n"}
```

=== "input.py"

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

Reactive Attributes

Name Type Default Description
cursor_blink bool True True if cursor blinking is enabled.
value str "" The value currently in the text input.
cursor_position int 0 The index of the cursor in the value string.
placeholder str str The dimmed placeholder text to display when the input is empty.
password bool False True if the input should be masked.

Messages

::: textual.widgets.Input.Changed

::: textual.widgets.Input.Submitted

Bindings

The Input widget defines the following bindings:

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

Component Classes

The input widget provides the following component classes:

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

Additional Notes

  • The spacing around the text content is due to border. To remove it, set border: none; in your CSS.

See Also