menu_documentation.py 1.2 KB

1234567891011121314151617181920212223242526272829
  1. from nicegui import ui
  2. from ..documentation_tools import text_demo
  3. def main_demo() -> None:
  4. with ui.row().classes('w-full items-center'):
  5. result = ui.label().classes('mr-auto')
  6. with ui.button(icon='menu'):
  7. with ui.menu() as menu:
  8. ui.menu_item('Menu item 1', lambda: result.set_text('Selected item 1'))
  9. ui.menu_item('Menu item 2', lambda: result.set_text('Selected item 2'))
  10. ui.menu_item('Menu item 3 (keep open)',
  11. lambda: result.set_text('Selected item 3'), auto_close=False)
  12. ui.separator()
  13. ui.menu_item('Close', on_click=menu.close)
  14. def more() -> None:
  15. @text_demo('Custom Context Menu', '''
  16. Using Quasar's `context-menu` and `touch-position` props, you can create custom context menus.
  17. ''')
  18. def custom_context_menu() -> None:
  19. with ui.image('https://picsum.photos/id/377/640/360'):
  20. with ui.menu().props('context-menu touch-position'):
  21. ui.menu_item('Flip horizontally')
  22. ui.menu_item('Flip vertically')
  23. ui.separator()
  24. ui.menu_item('Reset')