1
0

main.py 783 B

123456789101112131415161718192021222324252627
  1. #!/usr/bin/env python3
  2. from pathlib import Path
  3. from nicegui import app, ui
  4. from nicegui.events import KeyEventArguments
  5. folder = Path(__file__).resolve().parent / 'slides' # image source: https://pixabay.com/
  6. files = sorted(f.name for f in folder.glob('*.jpg'))
  7. index = 0
  8. def handle_key(event: KeyEventArguments) -> None:
  9. global index
  10. if event.action.keydown:
  11. if event.key.arrow_right:
  12. index += 1
  13. if event.key.arrow_left:
  14. index -= 1
  15. index = index % len(files)
  16. slide.set_source(f'slides/{files[index]}')
  17. app.add_static_files('/slides', folder) # serve all files in this folder
  18. slide = ui.image(f'slides/{files[index]}') # show the first image
  19. ui.keyboard(on_key=handle_key) # handle keyboard events
  20. ui.run()