Atajos
Una lista de atajos agrupada y con búsqueda para un diálogo de Atajos de teclado. groups son pares (título, [(acción, teclas), ...]).
ui.shortcuts · Categoría: Código y herramientas · Referencia completa →


pz.container(ui.shortcuts([ ("File", [("Save", "ctrl-s"), ("Open file", "ctrl-p")]), ("View", [("Command palette", "ctrl-shift-p"), ("Toggle left dock", "ctrl-b")]),], on_query=on_query, height=240), width=420)Cuándo usarlo
Sección titulada «Cuándo usarlo»- Dentro de un
ui.modalque se abre desde el menú Ayuda o con Ctrl+K Ctrl+S.
import pyzed as pzfrom pyzed import ui
pz.container(ui.shortcuts([ ("File", [("Save", "ctrl-s"), ("Open file", "ctrl-p")]), ("View", [("Command palette", "ctrl-shift-p"), ("Toggle left dock", "ctrl-b")]),], on_query=on_query, height=240), width=420)Variantes
Sección titulada «Variantes»Opciones
Sección titulada «Opciones»

Código
pz.container(ui.shortcuts([("File", [("Save", "ctrl-s"), ("Open", "ctrl-o")])], on_query=on_query, height=130), width=360)

query="pal"Código
pz.container(ui.shortcuts([("View", [("Command palette", "ctrl-shift-p"), ("Zoom in", "ctrl-=")])], query="pal", on_query=on_query, height=110), width=360)Eventos
Sección titulada «Eventos»Atajos tiene 1 evento 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_query |
(text) |
Añade un buscador. |
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().
Manejar los eventos
Sección titulada «Manejar los eventos»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 Help(pz.App): def __init__(self): self.query = ""
def view(self): return ui.shortcuts([("File", [("Save", "ctrl-s"), ("Open file", "ctrl-p")])], query=self.query, on_query=lambda q: setattr(self, "query", q)) # adds searchfrom dataclasses import dataclass
@dataclassclass Search: query: str
class Help(pz.App): query = ""
def update(self, message): match message: case Search(query): self.query = query
def view(self): return ui.shortcuts([("File", [("Save", "ctrl-s")])], query=self.query, on_query=Search)from dataclasses import dataclass
@dataclass(frozen=True)class State: query: str = ""
def view(state, set_state): return ui.shortcuts([("File", [("Save", "ctrl-s"), ("Open file", "ctrl-p")])], query=state.query, on_query=lambda q: set_state(query=q))Propiedades y API
Sección titulada «Propiedades y API»ui.shortcuts
Sección titulada «ui.shortcuts»shortcuts(groups, *, query='', on_query=None, height=380, theme=None)Una lista de atajos de teclado agrupada y con búsqueda (para un diálogo de atajos).
| Propiedad | Por defecto | Descripción |
|---|---|---|
groups |
obligatorio | [(título, [(etiqueta, teclas), ...]), ...], teclas como "ctrl-s". |
query |
"" |
Texto del filtro. |
height |
380 |
Alto de la lista. |
theme |
None |
Tema a usar en lugar del actual (pyzed.theme.current()). |
Eventos: on_query (eventos).