12345678910111213141516171819202122232425262728293031 |
- from nicegui import ui
- from ..documentation_tools import text_demo
- def main_demo() -> None:
- with ui.dialog() as dialog, ui.card():
- ui.label('Hello world!')
- ui.button('Close', on_click=dialog.close)
- ui.button('Open a dialog', on_click=dialog.open)
- def more() -> None:
- @text_demo('Awaitable dialog', '''
- Dialogs can be awaited.
- Use the `submit` method to close the dialog and return a result.
- Canceling the dialog by clicking in the background or pressing the escape key yields `None`.
- ''')
- def async_dialog_demo():
- with ui.dialog() as dialog, ui.card():
- ui.label('Are you sure?')
- with ui.row():
- ui.button('Yes', on_click=lambda: dialog.submit('Yes'))
- ui.button('No', on_click=lambda: dialog.submit('No'))
- async def show():
- result = await dialog
- ui.notify(f'You chose {result}')
- ui.button('Await a dialog', on_click=show)
|