AutoComplete
Helps the user make a selection by entering some text and choosing from among a list of displayed options.
        Inherits: LayoutControl
Properties
- 
          selected_index(int | None) –The index of the (last) selected suggestion. 
- 
          suggestions(list[AutoCompleteSuggestion]) –A list of AutoCompleteSuggestion
- 
          suggestions_max_height(Number) –The maximum - visual - height of the suggestions list. 
- 
          value(str) –Current text displayed in the input field. 
Events
- 
          on_change(ControlEventHandler[AutoComplete] | None) –Called when the input text changes. 
- 
          on_select(EventHandler[AutoCompleteSelectEvent] | None) –Called when a suggestion is selected. 
Examples#
Basic example#
import flet as ft
numbers = [
    ("one 1", "One"),
    ("two 2", "Two"),
    ("three 3", "Three"),
    ("four 4", "Four"),
    ("five 5", "Five"),
    ("six 6", "Six"),
    ("seven 7", "Seven"),
    ("eight 8", "Eight"),
    ("nine 9", "Nine"),
    ("ten 10", "Ten"),
]
def main(page: ft.Page):
    page.theme_mode = ft.ThemeMode.LIGHT
    page.horizontal_alignment = ft.CrossAxisAlignment.CENTER
    page.vertical_alignment = ft.MainAxisAlignment.CENTER
    def handle_change(e: ft.Event[ft.AutoComplete]):
        info.value = f"Current input 👀: {e.data!r} \n"
    def handle_select(e: ft.AutoCompleteSelectEvent):
        info.value = (
            f"Current input 👀: {e.control.value!r} \n"
            f"Your selection: {e.selection.value}"
        )
    page.add(
        ft.AutoComplete(
            value="One",
            width=200,
            on_change=handle_change,
            on_select=handle_select,
            suggestions=[
                ft.AutoCompleteSuggestion(key=key, value=value)
                for key, value in numbers
            ],
        ),
        info := ft.Text("Enter a number (in words or digits) to get suggestions."),
    )
ft.run(main)
Properties#
property
  
#
selected_index: int | None
The index of the (last) selected suggestion.
It is None until a suggestion has been selected from the UI.
Note
This property is read-only.
class-attribute
      instance-attribute
  
#
suggestions: list[AutoCompleteSuggestion] = field(
    default_factory=list
)
A list of AutoCompleteSuggestion
controls representing the suggestions to be displayed.
Note
- A valid AutoCompleteSuggestionmust have at least akeyorvaluespecified, else it will be ignored. If onlykeyis provided,valuewill be set tokeyas fallback and vice versa.
- The internal filtration process of the suggestions (based on their keys) with respect to the user's input is case-insensitive because the comparison is done in lowercase.
class-attribute
      instance-attribute
  
#
suggestions_max_height: Number = 200
The maximum - visual - height of the suggestions list.
class-attribute
      instance-attribute
  
#
value: str = ''
Current text displayed in the input field.
This value reflects user input even if it does not match any provided suggestion.
Events#
class-attribute
      instance-attribute
  
#
on_change: ControlEventHandler[AutoComplete] | None = None
Called when the input text changes.
class-attribute
      instance-attribute
  
#
on_select: EventHandler[AutoCompleteSelectEvent] | None = (
    None
)
Called when a suggestion is selected.