Closed wow-ww closed 1 week ago
Hi @wow-ww here's an example of how you can achieve this:
import gradio as gr
with gr.Blocks() as demo:
text_count = gr.Slider(1, 5, step=1, label="Textbox Count")
@gr.render(inputs=text_count)
def render_count(count):
boxes = []
for i in range(count):
box = gr.Textbox(key=i, label=f"Box {i}")
boxes.append(box)
def merge(*args):
return " ".join(args)
merge_btn.click(merge, boxes, output)
def clear():
return [""] * count
clear_btn.click(clear, None, boxes)
def countup():
return [i for i in range(count)]
count_btn.click(countup, None, boxes, queue=False)
with gr.Row():
merge_btn = gr.Button("Merge")
clear_btn = gr.Button("Clear")
count_btn = gr.Button("Count")
output = gr.Textbox()
if __name__ == "__main__":
demo.launch()
Hello @abidlabs @aliabid94! I am having in trouble.this is a code.
textbox will be rendering by text_count. Now I want to get input value in every textbox by user. And I always get the args is that
[<gradio.components.textbox.Textbox object at 0x000002BA020F8D50>, <gradio.components.textbox.Textbox object at 0x000002BA031C9450>]
in function get_text. What should I do to get Textbox's input value?