如何在JTextArea中设置文本而不替换那里的文本?

时间:2015-04-02 22:30:28

标签: java swing jtextarea

我将如何使用

for (int j = 0; j < song.size(); j++)  {
    outputBox.setText(j + ": " + song.get(j));
}

要显示数组中的所有项目,而不是将其替换为最后一个项目?使用java。

2 个答案:

答案 0 :(得分:3)

您应该使用JTextArea#append ...

outputBox.append(j + ": " + song.get(j));

但是你可能还想在最后加入一个新行字符

outputBox.append(j + ": " + song.get(j) + "/n");

有关详细信息,请参阅JTextArea#appendHow to Use Text Areas

使用StringBuilder并在事后设置文本区域的文本可能更有效

StringBuilder sb = StringBuilder(128);
for (int j = 0; j < song.size(); j++)  {
    sb.append(j).
       append(":").
       append(song.get(j)).
       append("/n");
}
outputBox.setText(sb.toString());

答案 1 :(得分:1)

猜猜但是......

String oldText = outputBox.getText();
outputBox.setText(oldText + j + ": " + song.get(j));