Expand description
Combo boxes display a dropdown list of searchable and selectable options.
§Example
use iced::widget::combo_box;
struct State {
fruits: combo_box::State<Fruit>,
favorite: Option<Fruit>,
}
#[derive(Debug, Clone)]
enum Fruit {
Apple,
Orange,
Strawberry,
Tomato,
}
#[derive(Debug, Clone)]
enum Message {
FruitSelected(Fruit),
}
fn view(state: &State) -> Element<'_, Message> {
combo_box(
&state.fruits,
"Select your favorite fruit...",
state.favorite.as_ref(),
Message::FruitSelected
)
.into()
}
fn update(state: &mut State, message: Message) {
match message {
Message::FruitSelected(fruit) => {
state.favorite = Some(fruit);
}
}
}
impl std::fmt::Display for Fruit {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
f.write_str(match self {
Self::Apple => "Apple",
Self::Orange => "Orange",
Self::Strawberry => "Strawberry",
Self::Tomato => "Tomato",
})
}
}
Structs§
- A widget for searching and selecting a single value from a list of options.
- The local state of a
ComboBox
.
Traits§
- The theme catalog of a
ComboBox
.