我正在尝试使用JEditorPane的setText方法在JEditorPane中显示rss提要条目,该方法获取相关信息(RSSEntries)。
在这个方法中,我得到了要在stringBuilder中发布的项目,到目前为止工作正常。但是,当在方法结束时,我尝试将stringBuilder中的文本设置为JEditorPane时,它不会发布任何内容。我试图用println输出stringbuilder的内容,文本确实有效,但是当我将它设置为JEditorPane时却没有。我也尝试设置自己的setText方法,在其中我将字符串构建器作为参数传递,然后从相关类中尝试使用像这样的get方法设置它m_editorPane.setText(getText()); ... get方法获取正确的信息,但此过程不会在JEditorPane上设置文本....任何人都可以指出我正确的方向吗?好像我错过了什么......?谢谢
public void createEditorInfo(ArrayList<Item> items)
throws MalformedURLException {
StringBuilder sb = new StringBuilder();
String url = m_urlName;
if (m_urlName != null) {
if ((items != null) && !(url.equals(null))) {
// create a new parser
m_parser = new Parser();
//set url name
m_parser.setM_urlName(m_urlName);
// start the parsing process
m_parser.start();
ItemList itemList = new ItemList();
// put rss entries into a list
itemList.setItem(items);
System.out.println("the item list is: " + itemList.getLength());
// /output the contents of the feed
for (int element = 0; element < itemList.getItem().size(); element++) {
sb.append(itemList.getItem().get(element).getTitle()
+ itemList.getItem().get(element).getDescription()
+ itemList.getItem().get(element).getM_myURL()
+ " <br>");
} // end for
System.out.println("sb from createEditorInfo is : " //This works just fine
+ sb.toString());
// Create editor pane
m_editorPane = new JEditorPane();
m_editorPane.setContentType("text/html");
m_editorPane.setEditable(false);
// add put the m_editorPane in a JScrollPane for scrolling function
m_editorPaneScrollpane = new JScrollPane(m_editorPane);
m_editorPaneScrollpane
.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED);
m_editorPaneScrollpane.setAutoscrolls(true);
m_editorPaneScrollpane.setEnabled(true);
m_editorPaneScrollpane.setVisible(true);
m_editorPaneScrollpane.setMinimumSize(new Dimension(100, 30));
m_editorPane.setText(sb.toString()); //This does not work
}
}
}