• 締切済み

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

  • EXCELのセル内にHTMLタグを含む文を入力

    エディタ上の文章 abc<table border=1><tr><td>A</td><td>B</td></tr><tr><td>C</td><td>D</td></tr></table> の文章をcopyして、適当なセルにpasteすると、この文章のままではなくて、A、B、C、Dが違う セルに入ってしまいます。 <とtabelの間に半角をいれて abc< table border=1><tr><td>A</td><td>B</td></tr><tr><td>C</td><td>D</td></tr></table> をcopyして、セルに入力すると、そのセル内には入りますが、abc< table border=1>ABCD とタグが無視された形で入力されてしまいます。 今まではこんな事はなかったのですが、HTMLタグが消えないようにする事はできないでしょうか?

  • HTMLのテーブルにデータを流し込む際のレイアウト

    度々、失礼させていただきます。なにぶん見よう見まねです。 「abc.csv」より条件(1)で抽出した後HTMLのテーブルに並べます。 但しこのままですとHTML上、右に伸びていってしまうので4つぐらいで 新しいテーブルに改行したいのですが、お力お貸しください。 <table> <tr> <td> <?php $Data=file("abc.csv"); for($i=0;$i<sizeof($Data);$i++){ $line=explode(",",$Data[$i]); if($line[0]=="0" && $line[1]=="1"){ //条件(1) print "<td><table><tr>\n" ; print "<td>{$line[2]}</td></tr>" ; print "<tr>" ; print "<td>{$line[4]}</td></tr>" ; print "</table></td>\n" ; } } ?> </td> </tr> </table>

    • ベストアンサー
    • PHP
  • このHTMLは間違えですか?

    テーブルタグにおいて、 <table> <tr><td><img src="ok.gif"></td></tr> <tr><td><img src="no.gif"></td></tr> </table> <table> <tr><td><img src="ok.gif"></td></tr> <img src="no.gif"> </table> この2つの構文はほぼ同じ表示になります。(細かい違いを気にしなければ) 下記は間違えでしょうが、使ってもかまわないということでしょうか?

    • ベストアンサー
    • HTML
  • 表が崩れるんです。

    他の質問に出ていたのですが、それでも解決しないので、 わかる方いたら、教えてください。 他で出ていたソースです。 <HTML> <BODY> <table width="100" border=1> <tr height="1"><td width="50"><img src="clear.gif" width="50" height="1"></td><td width="50"><img src="clear.gif" width="50" height="1"></td></tr> <tr><td width="50">abc</td><td width="50">ABC</td></tr> <tr><td width="50">abcde</td><td width="50">AB</td></tr> </table> </BODY> </HTML> これは、abcやabcdeぐらいならきれいに表示されるのですが、 abcをaaaaaaaaaaaaa・・・aaaと長くしたときに(width="50"で納まらない時に) aaaaaaaaaaaaa・・・aaaを改行させてでも「width="50"」で納めたいのですが どのようにすればよろしいでしょうか?

  • tdの中のbackgroundを繰り返しにしたくない

    webページをテーブルで組んだとき、1つだけのtd内にbackgroundを設定しているのですが、縦や横に長くなったときに、同じ画像が繰り返し表示されます。そこで、どのようにして繰り返しをなくせばいいのでしょうか?因みに、 <table> <tr> <td colspan="2" align="center"> <img src="aaa.gif"></td> </tr> <tr> <td rowspan="2" background="bbb.jpg">&nbsp;</td> <td align="center"> <img src="ccc.gif"></td> </tr> <tr> <td align="center"> <img src="ddd.gif"></td> </tr> </table> 上記HTMLで、bbb.gifにあたります。 どなたかご存知な方は教えてください。お願いします。

    • ベストアンサー
    • HTML
  • HTMLの修正

    <TABLE border="1" width="300> <TR><TD>14°の坂でも楽々上がり、下りる時は自動的にブレーキがかかる</TD> <td><IMG ○○○jpg" align="left" width="100" height=100"></td></TR> <TR><TD>センサー内臓グリップなので、速度調整、前進・後進の切り替えボタン操作不要</TD> <td><IMG ○○○jpg" align="left" width="100" height=100"></td></TR> <TR><TD>バッテリー容量が一目でわかり、自動的に電源OFFで安心</TD> <td><IMG IMG ○○○jpg" align="left" width="100" height=100"></td></TR> </TABLE> HTMLのタグ確認ツールで、以下の表示 エラー:2件 [行:3]「td」の開始タグがありません。 [行:3]「tr」の開始タグがありません。 解決方法を教えてください。

  • operaだとテーブルがなくなります

    operaだテーブルがなくなります IEだと問題なく表示されるのに だれか助けてください style.css    body{background-color:#ffff99;margin:0px; font-size:large; font-family:"HG正楷書体-PRO","HG行書体","HGP行書体",cursive} .cur{font-family:cursive} .ser{font-family:serif} } table{background-color:#ff9933;  width:100%; height:10%    }   .midori{background-color:#999933; width:100%; height:3.3%  }        htmlのほうは <HTML> <HEAD> <TITLE></TITLE> <link href="style.css" rel="stylesheet" type="text/css"> </HEAD> <BODY> <table><tr ><td></td></tr></table> <table class="midori"> <tr ><td></td></tr></table> <table style="height:6.7%"> <tr ><td></td></tr></table> <table style="position:absolute; left: 0px; bottom:8%; width:8%; height:100%; background-color:#993300"> <tr ><td></td></tr></table> <table style="position:absolute; bottom:0; height=8% " class="midori"> <tr ><td></td></tr></table> </BODY> </HTML> こんな感じなのですが どうしてでしょうか

    • ベストアンサー
    • HTML
  • 表示順が違うのはなぜでしょうか?

    PHP初心者です。 test1.php------------ <a>test1</a> test2.php------------ <table> <tr><td><?php include("test1.php"); ?></td></tr> <td><tr><a>ABC</a></td></tr> </table> test3.php------------ <table> <tr><td><?php include("test1.php"); ?></td></tr> </table> <table> <td><tr><a>ABC</a></td></tr> </table> で、test3.phpでは test1 ABC となるのに、test2.phpでは ABC test1 となってしまうのは何故でしょうか?よろしくお願いします。

    • ベストアンサー
    • PHP
  • HTMLコーディング時について

    お世話になります。 HTML作成時に <table> <tr> <td> <img src="aa.jpg"> ????? </td> </tr> </table> とした場合に画像とテキストの 表示が微妙にづれるのですが これって補正できないのでしょうか? それとも書き方に問題があるのでしょうか。 ご存知の方よろしくお願いします。 (補足)スタイルシート使用してます。

    • ベストアンサー
    • HTML
  • テーブルのセル内で、あるものは上辺寄せあるものは下辺寄せにしたい

    下記のようなソースを表示させた際に 「ABC」文字列が、10行でも100行で1000行になっても、 あいうえおのテーブルはvalign=topのようにボーダーの上に常に吸着し、かつ img.gifをvalign=bottomのようにボーダーの下に常に吸着させる方法を 教えてください。 <html> <body> <table border="1">   <tr>     <td>ABC<br>ABC<br>ABC<br>ABC<br>ABC<br>ABC<br>ABC</td>     <td>       <table border="1">         <tr>           <td>あいうえお</td>         </tr>       </table>       <img src="img.gif">     </td>   </tr> </table> </body> </html>

    • ベストアンサー
    • HTML
このQ&Aのポイント
  • Windows10で使用しているTk Fbp 101キーボードのスペースキーが作動しなくなりました。さらに、漢字変換もできなくなってしまいました。パソコンの直接入力ではスペースキーは正常に作動しています。
  • Windows10 Tk Fbp 101キーボードを使っていて、スペースキーが効かなくなり漢字変換ができなくなりました。しかし、パソコンの直接入力ではスペースキーはちゃんと動作しています。
  • Tk Fbp 101キーボードをWindows10で使っていますが、スペースキーの動作ができなくなりました。また、漢字変換もできなくなってしまいましたが、パソコンの直接入力では問題ありません。
回答を見る