# Estado vacío

> Un marcador centrado para listas y búsquedas vacías. Un componente nativo de Pyzed para GUIs de escritorio en Python, con vista previa, ejemplos y su API.

Source: https://albakore.github.io/pyzed/es/library/empty-state/

:::tip[En pocas palabras]
Lo que muestra una pantalla cuando aún no tiene nada, con una pista de qué hacer después.
:::

Un icono, un título, una descripción y acciones centrados para un lugar que aún no tiene nada que mostrar.

`ui.empty_state` · Categoría: [Estado y avisos](https://albakore.github.io/pyzed/es/library/#estado-y-avisos) · [Referencia completa →](https://albakore.github.io/pyzed/es/reference/ui/#empty_state)

**Código:**

```python
ui.empty_state("No results", "Try a different search.", icon="search",
               actions=[ui.button("Clear filters", on_clear, size="sm")])
```

## Cuándo usarlo

- Para una lista vacía, una búsqueda sin resultados o un panel antes de abrir el primer archivo.
- Ofrece el siguiente paso como acción (Crear, Quitar filtros, Abrir carpeta).

## Uso

```python
from pyzed import ui

ui.empty_state("No results", "Try a different search.", icon="search",
               actions=[ui.button("Clear filters", on_clear, size="sm")])
```

## Variantes

:::note[Sobre estas capturas]
Cada captura la graba pyzed mismo, fuera de pantalla a 2x, en One Dark o One Light según el tema de este sitio, y recortada al componente para que se vea a su tamaño real. El puntero pasa por encima, pulsa o escribe en él; un componente que no reacciona al puntero recorre algunos temas. Con movimiento reducido ves el primer fotograma. Abre **Código** bajo una captura para ver el fragmento que la dibuja; los nombres libres como `on_save` son tus propios callbacks.
:::

### Contenido

```python
ui.empty_state("No notifications")
```

```python
ui.empty_state("No results", "Try a different search.", icon="search")
```

```python
ui.empty_state("No projects yet", "Create one to get started.", icon="folder-plus",
               actions=[ui.button("New project", on_new, variant="solid", size="sm")])
```

### Estados y eventos

```python
ui.empty_state("No results", "Try another search", icon="search", size="sm", height="shrink")
```

```python
ui.empty_state("No projects", "Create one to start", icon="folder", size="lg", height=220)
```

## Eventos

Estado vacío no tiene eventos propios: muestra lo que le das. 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](https://albakore.github.io/pyzed/es/guides/events/) y [Eventos de cada componente](https://albakore.github.io/pyzed/es/library/events/).

## Propiedades y API

### `ui.empty_state`

```python
empty_state(
    title,
    description=None,
    *,
    icon='inbox',
    actions=(),
    size='md',
    height='fill',
    theme=None,
)
```

Un marcador centrado para listas vacías, búsquedas sin resultados, etc.

| Propiedad | Por defecto | Descripción |
| --- | --- | --- |
| `title` | *obligatorio* | Título. |
| `description` | `None` | Texto secundario. |
| `icon` | `"inbox"` | Nombre de un icono de Lucide (`pyzed icons` los lista). |
| `actions` | `()` | Widgets extra (normalmente botones) que se muestran como acciones. |
| `size` | `"md"` | `"sm"`, `"md"` o `"lg"`. |
| `height` | `"fill"` | `"fill"` (por defecto), píxeles o `"shrink"`. |
| `theme` | `None` | Tema a usar en lugar del actual (`pyzed.theme.current()`). |

[Referencia completa →](https://albakore.github.io/pyzed/es/reference/ui/#empty_state)

## Relacionados

- [Aviso](https://albakore.github.io/pyzed/es/library/callout/): Un aviso en línea con título, texto y acciones.
- [Pista de atajo](https://albakore.github.io/pyzed/es/library/keybinding-hint/): Una pista discreta tipo “Abrir archivo Ctrl P”.
- [Tarjeta](https://albakore.github.io/pyzed/es/library/card/): Una superficie con borde, título y acciones opcionales.
