select.py 467 B

123456789101112131415
  1. import justpy as jp
  2. from typing import Callable, List
  3. from .element import Element
  4. from ..utils import handle_exceptions, provide_arguments
  5. class Select(Element):
  6. def __init__(self, options: List[str], value: str = None, on_change: Callable = None):
  7. view = jp.QSelect(value=value, options=options)
  8. if on_change is not None:
  9. view.on('input', handle_exceptions(provide_arguments(on_change, 'value')))
  10. super().__init__(view)