1
0
Falko Schindler 4 жил өмнө
parent
commit
ad8a83b767
2 өөрчлөгдсөн 12 нэмэгдсэн , 1 устгасан
  1. 3 1
      main.py
  2. 9 0
      nice_gui.py

+ 3 - 1
main.py

@@ -11,6 +11,8 @@ with ui.card():
             ui.checkbox('Check me!', on_change=lambda e: output.set_text('Checked' if e.value else 'Unchecked'))
             ui.switch('Switch me!', on_change=lambda e: output.set_text('Switched' if e.value else 'Unswitched'))
             ui.slider(0, 100, on_change=lambda e: output.set_text(e.value))
+            ui.input('Text input', on_change=lambda e: output.set_text(e.value))
+            ui.input('Number input', on_change=lambda e: output.set_text(e.value), type='number')
         with ui.column():
             ui.radio(['A', 'B', 'C'], on_change=lambda e: output.set_text(e.value))
             ui.select(['1', '2', '3'], on_change=lambda e: output.set_text(e.value))
@@ -35,4 +37,4 @@ with ui.card():
         plot.update()
     ui.timer(3.0, update_plot, once=True)
 
-ui.run()
+ui.run()

+ 9 - 0
nice_gui.py

@@ -107,6 +107,15 @@ class Ui(Starlette):
             view.on('input', handle_exceptions(provide_arguments(on_change, 'value')))
         return Element(view)
 
+    def input(self, placeholder=None, value=None, type='text', on_change=None):
+
+        view = jp.QInput(placeholder=placeholder, type=type)
+        if value is not None:
+            view.value = value
+        if on_change is not None:
+            view.on('input', handle_exceptions(provide_arguments(on_change, 'value')))
+        return Element(view)
+
     @contextmanager
     def plot(self, close=True):