2

JEdi​​torPane の使用に問題があります。同じ行でテキストを左揃えと右揃えにしたい。

これが私のコードです:

INFO_AREA = new JEditorPane();
    INFO_AREA.setBorder(BorderFactory.createCompoundBorder(BORDER, 
                BorderFactory.createEmptyBorder(10, 10, 10, 10)));
    HTMLEditorKit kit = new HTMLEditorKit();
    INFO_AREA.setEditorKit(kit);
    StyleSheet styleSheet = kit.getStyleSheet();
    styleSheet.addRule(".alignleft{color : rgb(0,128,25); font-weight: bold; float: left;}");
    styleSheet.addRule(".alignright{color : rgb(0,128,25); font-weight: bold; float: right;}");
    INFO_AREA.setText("<html>" +
            "<center><b><font size=6>Important Information</font></b></center>" 
            "<div id=textbox><p class='alignleft'>left</p><p class='alignright'>right</p></div>" +
            "</html>");
    INFO_AREA.setLocation(305, 10);
    INFO_AREA.setSize(275, 200);
    INFO_AREA.setEditable(false);
    PANE.add(INFO_AREA);

JEdi​​torPane がフロートをサポートしていないようです。

だから、同じ行で左揃えと右揃えのテキストを達成する方法を誰かが知っているでしょうか?

4

1 に答える 1

3

Swing の HTML レンダラーは古いです。HTML 3.2 と CSS 1.0 をサポートしていますが、これらの仕様のすべての機能をサポートしているわけではありません。

CSS クラスのドキュメントを見ると、サポートされているすべての CSS プロパティがリストされていることがわかります。サポートされているもののリストがあり、その後に「以下はモデル化されていますが、現在レンダリングされていません」で始まるリストが続きます。そのリストには float プロパティがあります。

そのため、Swing HTML レンダリングは現在 float プロパティをサポートしていません。まったく。

この問題には、 Java バグ ID 4296022という長期にわたる未解決のバグがあります。

于 2013-11-03T21:53:38.517 に答える