如何将文本添加到新行

时间:2015-03-28 17:37:47

标签: java vaadin

我想将文字添加到新行。

我的代码:

TextField text = new TextField();

TextArea area = new Area();

String txt = text.getValue().toString();

area.setValue("\n" + txt);

当我点击我的按钮时,我会从TextField中看到我的值。我想在TextArea的新行中添加新文本。请帮忙。

4 个答案:

答案 0 :(得分:1)

您必须将新值附加到现有值并进行设置。有点像:

area.setValue(area.getValue() + "\n" + txt);

Vaadin TextArea无法直接追加。还有java中的规则,何时使用+进行stringsapply。如果您这样做,请考虑使用StringBuffer

答案 1 :(得分:0)

而不是

area.setValue("\n" + txt);

使用

area.setValue(area.getValue + "\n" + txt);

这将添加文本,而不是REPLACE

答案 2 :(得分:0)

我建议在最后添加新行。你将避免在TextArea的开头有一个空行。

E.g。 outputTextArea.setValue(outputTextArea.getValue() + input.getValue() + "\n");

此外:请务必使用 TextArea 而不是 TextField ,因为使用“\ n”的换行符不能用于 TextField

答案 3 :(得分:0)

请记住,Vaadin适用于浏览器,因此普通的scape字符不起作用,即:您不能使用' \ n'正常Label。而不是它执行以下操作:

label.setCaptionAsHtml(true);
label.setValue(label.getValue()+"<br>");

如果您使用的是TextArea,则可以像往常一样使用'\n'。 如果是TextFiel,则无法写入多行,因为它会在TextArea中对其进行转换,并且不推荐使用此行为。