【问题标题】:Newline "\n" in TextField javaTextField java中的换行符“\ n”
【发布时间】:2011-03-28 01:55:48
【问题描述】:

我正在构建字符串(3 个不同的对象),在字符串的末尾我放了一个换行符 当我在控制台中打印时,我得到了预期的结果,但是当我在文本字段中使用 setText 时,我显示了一行,有没有办法在文本字段中获取换行符?

    while (itr.hasNext()) 
          tx +=   "\n"+el.getnombre() + " " +other+"\n";  
    System.out.println(tx);
    textfield.setText(tx);

【问题讨论】:

  • 考虑使用StringBuilder 而不是tx += ... - 如果itr.hasAWholeBunch() 然后构建tx 将非常缓慢。

标签: java textfield


【解决方案1】:

JTextField 或 TextField(不确定您使用的是哪个)仅适用于单行。如果您想要一个基本的多行文本显示并且您正在使用 Swing,那么请使用 JTextArea。如果您没有使用 Swing,请告诉我们您使用的是哪个 GUI 库,因为这是您的问题应该提及的重要细节。

【讨论】:

    【解决方案2】:

    如前所述,使用JTextArea 而不是JTextField。 那里要么使用JTextArea.append(String text),要么使用JTextArea.setText(String text)

    1. 选项:将给定文本附加到文档的末尾。 这会将文本添加到 JTextArea 的末尾。

    2. 选项:getText()JTextArea 中获取文本,然后操作字符串,然后使用setText(String text)JTextArea 的文本设置为新字符串。

    要在换行符中设置文本,您需要在字符串末尾添加“\n”。 以下代码显示了第二个选项:

    String oldlines = VisualizeArea.getText(); 
    String newline = "your new line"
    VisualizeArea.setText(oldlines + "\n" + newline);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-19
      • 2016-11-03
      相关资源
      最近更新 更多