JTextPane não exibe JScrollPane e não quebra texto
Eu preciso mostrar links, então estou usando JTextPane com setContentType. No entanto, o conteúdo não é quebrado e não há rolagem. O conteúdo do JTextPane será retornado de um feed RSS. Aqui está o código completo:
<code>import java.awt.*; import javax.swing.*; class Main extends JFrame { JFrame frame; JTabbedPane tabbedPane; JPanel home, news; public Main() { setTitle("My Title" ); setSize( 900, 600 ); setLocationRelativeTo(null); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); home(); news(); tabbedPane = new JTabbedPane(); tabbedPane.addTab( " Home", home ); tabbedPane.addTab( "News", news ); JPanel framePanel = new JPanel(); framePanel.setLayout(new BorderLayout()); framePanel.add( tabbedPane, BorderLayout.CENTER ); getContentPane().add( framePanel ); } public void home() { home = new JPanel(); // some stuffs here } public void news() { news = new JPanel(); JTextPane newsTextPane = new JTextPane(); newsTextPane.setContentType("text/html"); newsTextPane.setEditable(false); JScrollPane scrollPane = new JScrollPane(newsTextPane); scrollPane.setVerticalScrollBarPolicy(javax.swing.ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS); news.add(scrollPane); RSS reader = RSS .getInstance(); reader.writeNews(); String rssNews = reader.writeNews(); newsTextPane.setText(rssNews); } public static void main( String args[] ) { RSS reader = RSS.getInstance(); reader.writeNews(); Main mainFrame = new Main(); mainFrame.setVisible( true ); mainFrame.setDefaultCloseOperation( EXIT_ON_CLOSE ); } } </code>
Meu resultado: