0

我正在尝试来自该网站的 RSS Feed 代码 (http://javamix.wordpress.com/category/programs/rss-feed/) 它运行良好。我想改为在 GUI 中显示结果。我创建了一个 JTextArea 来附加元素,但结果是“加载”而不是被列出。谢谢。

原来的:

System.out.println("Title: " + getElementValue(element,"title"));
System.out.println("Link: " + getElementValue(element,"link"));
System.out.println("Publish Date: " + getElementValue(element,"pubDate"));

我创建了一个 JTextArea 来显示结果:

for (int i-0; i<nodes.getLength();i++)
{
     Element element = (Element)nodes.item(i);

     JTextArea textArea = new JTextArea();
     textArea.setBounds(10, 11, 864, 540);
     textArea.setWrapStyleWord(true);
     getContentPane().add(textArea);

     textArea.append("Title: " + getElementValue(element,"title") + "\n");
     textArea.append("Link: " + getElementValue(element,"link") + "\n");
     textArea.append("Publish Date: " + getElementValue(element,"pubDate") + "\n"); 
}

我是新用户,不允许上传图片,但有链接 :) 我需要显示在 GUI 中的完整结果列表。

我的结果(标题、链接、发布日期在结果加载时保持不变)>>> 参考截图我的结果

控制台(结果的完整列表)>>> 参考截图控制台

4

1 回答 1

2

TextArea每次都在循环中制作新内容。将 to 的声明和实例化移动TextArea到循环之前。

像这样:

JTextArea textArea = new JTextArea();
textArea.setBounds(10, 11, 864, 540);
textArea.setWrapStyleWord(true);
getContentPane().add(textArea);
for (int i = 0; i < nodes.getLength();i++)
{
     Element element = (Element)nodes.item(i);

     textArea.append("Title: " + getElementValue(element,"title") + "\n");
     textArea.append("Link: " + getElementValue(element,"link") + "\n");
     textArea.append("Publish Date: " + getElementValue(element,"pubDate") + "\n"); 
}
于 2012-05-02T19:04:25.603 回答