首页 > 解决方案 > ipywidgets Textarea on_submit()

问题描述

我需要设置一个特定的工作流程,其中输入文本字段需要不止一行,因此不能使用简单的文本小部件。这就是为什么最适合使用 Textarea 小部件的原因。但是......这个小部件没有 on_submit() 方法。有没有一种方法可以将 on_submit() 方法添加到 Textarea,这样它就可以像常规的 Text 小部件一样工作,我可以通过 Enter 击键提交输入的文本。首选是保留 ipywidgets。谢谢!

import ipywidgets as widgets
text = widgets.Text()
display(text)

def handle_submit(sender):
    print(text.value)

text.on_submit(handle_submit)

标签: pythontextareaipywidgets

解决方案


作为一种解决方法,您可以使用 ipywidgets 创建一个“提交”按钮并设置 on_button_clicked功能以打印文本区域的值。请参见下面的代码:

import ipywidgets as widgets
text_area = widgets.Textarea()
submit_button=widgets.Button(description='Submit text',button_style='success')
def on_button_clicked(b):
  print(text_area.value)


display(text_area,submit_button)
submit_button.on_click(on_button_clicked)

输出如下所示:

在此处输入图像描述


推荐阅读