htmlファイルをjavaのJFrame内で表示したいと思い、JEditorPaneを使い下に記したコードを作りました。
htmlのコードだけの表示になるのですが、背景や文字の色などを追加したいのですが、cssは反映されないためHTMLEditorKitやStyleSheetを使って表現するとのことなのですがうまくいきません。
import java.io.*; import javax.swing.*; import javax.swing.text.html.HTMLEditorKit; import javax.swing.text.html.StyleSheet; import java.awt.*; public class ex extends JFrame { public static void main( String[] args ) { new ex(); } public ex() { StringBuffer text = new StringBuffer(); try { BufferedReader br = new BufferedReader( new FileReader( "./htmlfile/example.html" ) ); String line; while ( ( line = br.readLine() ) != null ) { text.append( line + "\n" ); } br.close(); } catch ( Exception e ) { e.printStackTrace(); } JEditorPane editorpane = new JEditorPane( "text/html", text.toString() ); getContentPane().add( BorderLayout.CENTER, editorpane ); add(new JScrollPane(editorpane)); setSize( 800, 600 ); setLocation(500,100); setVisible( true ); } }
HTMLEditorKit editorKit = new HTMLEditorKit(); StyleSheet css = editorKit.getStyleSheet(); css.addRule("BODY { color: #edc7ff;}"); editorKit.setStyleSheet(css); editorpane.setEditorKit(editorKit);
このコードをJEditorPane editorpane = new JEditorPane( "text/html", text.toString() );の後に入れてみたのですがhtmlファイルが表示されなくなります。色々試行錯誤したのですが解決しないため、いい方法があれば教えていただければと思います。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。