我正在构建字符串(3个不同的对象),在字符串的末尾我放了一个换行符 当我在控制台中打印时,我得到了预期但当我在文本字段中使用setText时,我显示了一行,是否有办法在文本字段中获取换行符?
while (itr.hasNext())
tx += "\n"+el.getnombre() + " " +other+"\n";
System.out.println(tx);
textfield.setText(tx);
答案 0 :(得分:22)
JTextField或TextField(不确定您使用的是否)仅适用于单行。如果您想要一个基本的多行文本显示并且您正在使用Swing,那么请使用JTextArea。如果你没有使用Swing,那么请告诉我们你正在使用哪个GUI库,因为这是你的问题应该提到的一个重要细节。
答案 1 :(得分:2)
如前所述,请使用JTextArea
代替JTextField
。
并使用JTextArea.append(String text)
或使用JTextArea.setText(String text)
。
选项:将给定文本追加到文档末尾。
这会将文字添加到JTextArea
。
选项:getText()
从JTextArea
获取文本,然后操纵字符串,然后使用setText(String text)
将JTextArea
的文本设置为新的字符串。
要在换行符中设置文本,您需要在String的末尾添加“\ n”。 以下代码显示了第二个选项:
String oldlines = VisualizeArea.getText();
String newline = "your new line"
VisualizeArea.setText(oldlines + "\n" + newline);