123456789101112131415161718192021222324252627 |
- #!/usr/bin/env python3
- from pathlib import Path
- from nicegui import app, ui
- from nicegui.events import KeyEventArguments
- folder = Path(__file__).resolve().parent / 'slides' # image source: https://pixabay.com/
- files = sorted(f.name for f in folder.glob('*.jpg'))
- index = 0
- def handle_key(event: KeyEventArguments) -> None:
- global index
- if event.action.keydown:
- if event.key.arrow_right:
- index += 1
- if event.key.arrow_left:
- index -= 1
- index = index % len(files)
- slide.set_source(f'slides/{files[index]}')
- app.add_static_files('/slides', folder) # serve all files in this folder
- slide = ui.image(f'slides/{files[index]}') # show the first image
- ui.keyboard(on_key=handle_key) # handle keyboard events
- ui.run()
|