Ir al contenido

Chip

Una etiqueta pequeña y redondeada. Con on_press funciona como un filtro que se activa (selected=True la resalta) y con on_remove muestra un botón para quitarla, como en una lista de etiquetas.

ui.chip · Categoría: Acciones · Referencia completa →

ChipChip
  • Para etiquetas, filtros y valores elegidos (una selección múltiple, destinatarios).
  • Para estados de solo lectura usa una Insignia.
import pyzed as pz
from pyzed import ui
class Tags(pz.App):
def __init__(self):
self.tags = ["python", "rust", "iced"]
def view(self):
return pz.row([ui.chip(t, on_remove=lambda t=t: self.tags.remove(t)) for t in self.tags],
spacing=6, wrap=True)
Chip: EstáticoChip: Estático
Estático
Código
ui.chip("python")
Chip: on_press=Chip: on_press=
on_press=
Código
ui.chip("rust", on_press=on_filter)
Chip: selected=TrueChip: selected=True
selected=True
Código
ui.chip("python", on_press=on_filter, selected=True)
Chip: on_remove=Chip: on_remove=
on_remove=
Código
ui.chip("iced", on_remove=on_remove)
Chip: icon="tag"Chip: icon="tag"
icon="tag"
Código
ui.chip("design", icon="tag")
Chip: Icono y quitarChip: Icono y quitar
Icono y quitar
Código
ui.chip("ada@example.com", icon="user", on_remove=on_remove)
Chip: Elegido con iconoChip: Elegido con icono
Elegido con icono
Código
ui.chip("favorites", icon="star", selected=True, on_press=on_filter)
Chip: tint="error"Chip: tint="error"
tint="error"
Código
ui.chip("Failing", on_press=on_press, selected=True, tint="error")
Chip: disabled=TrueChip: disabled=True
disabled=True
Código
ui.chip("Archived", on_press=on_press, on_remove=on_remove, disabled=True)

Chip tiene 2 eventos propios, en la tabla de abajo. Como todo widget, también tiene los 18 eventos comunes (click, double_click, right_click, mouse_enter, drag, key_down, resize…), que se conectan con .on(...): mira Eventos y Eventos de cada componente.

Evento El handler recibe Cuándo
on_press () Mensaje o callable que se envía al pulsar. None deshabilita el control.
on_remove () Muestra una ✕ que envía esto al pulsarla.

El handler recibe es lo que Pyzed le pasa a tu función: () es nada. Cualquier handler también puede ser un mensaje (un valor que no se puede llamar), que va a update().

Los mismos eventos escritos de tres formas. Imperativa: métodos de la app que cambian self. Declarativa: los handlers producen mensajes y un único update() decide. Funcional: una función pura dibuja un estado inmutable y pide cambios con set_state(...). Mira Imperativo, declarativo y funcional.

class Filters(pz.App):
def __init__(self):
self.tags = ["python", "rust", "iced"]
self.active = "python"
def view(self):
return pz.row([
ui.chip(t, selected=t == self.active,
on_press=lambda t=t: setattr(self, "active", t), # pick it
on_remove=lambda t=t: self.tags.remove(t)) # its ✕
for t in self.tags
], spacing=6, wrap=True)
chip(
content,
*,
on_press=None,
on_remove=None,
selected=False,
icon=None,
tint='accent',
disabled=False,
theme=None,
)

Una etiqueta compacta, opcionalmente pulsable (filtros) y con botón para quitarla.

Propiedad Por defecto Descripción
content obligatorio Texto.
selected False Lo marca como seleccionado.
icon None Nombre de un icono de Lucide (pyzed icons los lista).
tint "accent" Color cuando está seleccionada (un token del tema).
disabled False La atenúa e ignora las pulsaciones.
theme None Tema a usar en lugar del actual (pyzed.theme.current()).

Eventos: on_press, on_remove (eventos).

Referencia completa →