Componentes

Los componentes son widgets interactivos que permiten a los usuarios configurar parámetros (inputs) o ver resultados dentro de tu bloque personalizado.

circle-info

Los componentes se construyen mediante argumentos por palabra clave (keyword arguments).

Argumentos genéricos

Los argumentos genéricos se aplican a todos los componentes personalizados. Puedes pasarlos como keyword arguments a los constructores.

En lugar de repetirlos para cada componente, aquí tienes una pequeña referencia en estilo “pyi”:

# Common keyword arguments (supported by all components)
class _CommonComponentKwargs:
    def __init__(
        self,
        *,
        tool_tip: str = "",
        enabled: bool = True,
        hidden: bool = False,
        fixed_width: int = 0,
        fixed_height: int = 0,
        minimum_width: int = 0,
        minimum_height: int = 0,
        maximum_width: int = 0,
        maximum_height: int = 0,
        serializable: bool = True,
        stylesheet: str = "",
        font_size: int = -1,
        font_bold: bool = False,
        alignment: str = "AlignLeft",
        **kwargs,
    ) -> None: ...

Notas:

  • tool_tip controla la ayuda (tooltip) mostrada al pasar el cursor sobre el componente.

  • fixed_width / fixed_height están en píxeles. Usa 0 para “automático”.

  • Algunos componentes sobrescriben valores por defecto (por ejemplo DropDown no es serializable; Image no es serializable por defecto).

Text Input

Permite a los usuarios introducir texto o números en una sola línea.

![](.assets/gitbook/image (50).png)

Notas:

  • Usa check_type=int o check_type=float para restringir lo que el usuario puede teclear.

  • Usa .toInt() / .toFloat() cuando quieras que los errores de conversión aparezcan con una excepción clara (sin fallback silencioso).

Ejemplo:

Las listas desplegables permiten a los usuarios elegir una opción de una lista de textos.

![](.assets/gitbook/image (49).png)

Notas:

  • Si pasas items como un dict[str, object], puedes acceder al valor mapeado mediante .getCurrentMatch().

circle-exclamation

Ejemplo:

Label

Los labels son componentes de texto simples para mostrar texto estático o dinámico en tu bloque personalizado.

![](.assets/gitbook/image (54).png)

También se usan para informar sobre componentes interactivos:

![](.assets/gitbook/image (53).png)

Ejemplo:

Slider

Restringe la entrada del usuario a un rango numérico.

![](.assets/gitbook/image (55).png)

Ejemplo:

Slider Labeled

Igual que Slider pero añade una etiqueta que muestra automáticamente el valor actual del componente.

![](.assets/gitbook/image (56).png)

Ejemplo:

CheckBox

Permite entrada de estado lógico (true/false).

![](.assets/gitbook/image (43).png)

Ejemplo:

Button

Dispara un evento en tu script al hacer clic con el ratón. Este componente también es muy útil para la gestión de recursos en bloques personalizados dentro del escenario.

![](.assets/gitbook/image (44).png)

circle-info

Usa set_clicked_callback(...) dentro de init().

Ejemplo:

El ejemplo anterior utiliza callbacks junto con register_resource y get_resource.

Image

![](.assets/gitbook/image (45).png)

Ejemplo:

Table

Permite seleccionar varios ítems/modos al mismo tiempo.

![](.assets/gitbook/image (46).png)

Ejemplo:

Text Edit

Text Edit es un área de texto de múltiples líneas.

Ejemplo:

Última actualización