• 締切済み

swingでのHTMLの表示

JEditorPaneクラスにHTMLEditorKitクラスをセットして、 以下のようなHTMLを表示しようとしているのですが、スタイルシートでの画像の読み込みや、tableタグのbackgroundがうまく動きません。 javaソースでは、setTextメソッドにてHTMLを読みこんでおります。 どなたかご存知の方、ご教授していただけないでしょうか。 よろしくお願いします。 ・スタイルシート内 table.abc{ background-image: url(file:/C:/img/abc.jpg); } ・HTMLドキュメント内のテーブルタグ <table class="abc"> <tr> <td>1234567890</td> </tr> </table> <table background ="file:/C:/img/abc.jpg"> <tr> <td>1234567890</td> </tr> </table> ・javaソース tArea = new JEditorPane(); tArea.setContentType("text/html"); //$NON-NLS-1$ tArea.setEditable(false); tArea.setMargin(new Insets(5, 10, 5, 10)); StyleSheet styleSheet = new StyleSheet(); try { Reader reader = new InputStreamReader(ClassLoader.getSystemResourceAsStream(CSS)); styleSheet.loadRules(reader, ClassLoader.getSystemResource(CSS)); reader.close(); } catch(IOException ie) { ie.printStackTrace(); } HTMLEditorKit kit = new HTMLEditorKit(); styleSheet.addStyleSheet(kit.getStyleSheet()); kit.setStyleSheet(styleSheet); //kit.getStyleSheet().addStyleSheet(styleSheet); tArea.setEditorKit(kit); copy = new CopyAction(); copy.setEnabled(false); selectAll = new SelectAllAction();

みんなの回答

  • hrm_mmm
  • ベストアンサー率63% (292/459)
回答No.1

HTMLEditorKitクラスはまだ利用したことがないけど、画像のurlが間違ってるせいでは? ブラウザでも表示出来るurl指定にする必要があると思います。 file:///C:/img/abc.jpg または file://localhost/C:/img/abc.jpg localhostは省略出来るけど、/は省略したら、正しいアドレスではなくなります。

ke79
質問者

お礼

hrm_mmmさん、ご回答ありがとうございます。 やってみましたが、やはりだめでした。 ちなみに、tdタグのbackgroundでは表示されました。 なぜかtableタグのbackgroundでは表示されません。

関連するQ&A