VAADIN - 添加TextField动态

时间:2012-08-26 02:24:22

标签: java vaadin

在VAADIN组件中,用户应该有一个选项可以在问题的N个答案中插入一个。

初始应该有一个Textfield用于第一个带按钮的答案(“添加另一个答案”)

在按钮按下时,应该为第二个答案添加一个新的文本字段,依此类推......

我的问题是,我怎样才能在Button Push中实现新Textfield的动态加载?

我添加了一张我如何想象这个问题的图片。

enter image description here

2 个答案:

答案 0 :(得分:0)

只需在按钮上添加一个单击侦听器,即为布局添加文本字段。基本的Vaadin,没有技巧。

如果您的代码不起作用,请将其添加到您的问题中。

答案 1 :(得分:0)

将 Textfield 放在它自己的垂直布局中,每当单击按钮时,向垂直布局添加一个新的 Textfield。

当需要检索答案时,获取对垂直布局的引用并调用 getChildren(),这将返回垂直布局中的所有 TextField。

像这样:

List<String> answers = verticalLaout.getChildren()
                                   .stream()
                                   .map(TextField::getValue)
                                   .collect(asList());