如何在Java Swing组件中显示HTML文档(字符对齐)?

时间:2016-03-11 00:37:07

标签: java html css swing jtextpane

如何显示像这样的HTML文档

<html>
<body>
<span style="float: left;">left 1</span>
<span style="float: right;">right 1</span><br>
<span style="float: left;">left 2</span>
<span style="float: right;">right 2</span>
</body>
</html>

使用某人Swing元素?

在浏览器中,它看起来与我需要的一样enter image description here

但在Java中它看起来像这样: enter image description here

我正在使用jTextPane:

jTextPane2.setText("<html>\n" +
                    "<body>\n" +
                    "<span style=\"float: left;\">left 1</span>\n" +
                    "<span style=\"float: right;\">right 1</span><br>\n" +
                    "<span style=\"float: left;\">left 2</span>\n" +
                    "<span style=\"float: right;\">right 2</span>\n" +
                    "</body>\n" +
                    "</html>");

问题是我需要使用字符对齐属性。不是段落对齐属性。由于段落标记之间用空格分隔。但它不应该存在。

我已经使用HTML中的表解决了这个问题:

<html>
<body>
<table width='100%'>
  <tr>
    <td width='33%' align='left'>left 1</td>
    <td width='33%' align='center'>center 1</td>
    <td width='33%' align='right'>right 1</td>
  </tr>
    <tr>
    <td width='33%' align='left'>left 2</td>
    <td width='33%' align='center'>center 2</td>
    <td width='33%' align='right'>right 2</td>
  </tr>
</table>
</body>
</html>

爪哇:

jTextPane2.setText("<html>\n" +
                    "<body>\n" +
                    "<table width='100%'>\n" +
                    "  <tr>\n" +
                    "    <td width='33%' align='left'>left 1</td>\n" +
                    "   <td width='33%' align='center'>center 1</td>\n" +
                    "   <td width='33%' align='right'>right 1</td>\n" +
                    "  </tr>\n" +
                    "    <tr>\n" +
                    "    <td width='33%' align='left'>left 2</td>\n" +
                    "   <td width='33%' align='center'>center 2</td>\n" +
                    "   <td width='33%' align='right'>right 2</td>\n" +
                    "  </tr>\n" +
                    "</table>\n" +
                    "</body>\n" +
                    "</html>");

但也许还有其他更准确的方法。请告诉我。

0 个答案:

没有答案