0

手順を使用して、独自のタグhttp://java-sl.com/custom_tag_html_kit.htmlを追加します

class MyParserDelegator extends ParserDelegator {
public MyParserDelegator() {
    try {
        Field f=javax.swing.text.html.parser.ParserDelegator.class.getDeclaredField("dtd");
        f.setAccessible(true);
        DTD dtd=(DTD)f.get(null);
        javax.swing.text.html.parser.Element div=dtd.getElement("div");
        dtd.defineElement("button", div.getType(), true, true,div.getContent(),null, null,div.getAttributes());

    } catch (NoSuchFieldException | SecurityException | IllegalArgumentException | IllegalAccessException e) {
    }
}

}

残念ながら、正しく動作していません: 誰か助けてくれませんか?
画像

4

2 に答える 2

1

次の(jdk 1.7)を使用して動作します:

Field f = javax.swing.text.html.parser.ParserDelegator.class.getDeclaredField("DTD_KEY");

唯一の変更点はキーです:"DTD_KEY"大文字!!

を使用してキー「DTD_KEY」を見つけました

Field[] flds = javax.swing.text.html.parser.ParserDelegator.class.getDeclaredFields();
for (Field f: flds)  
{
       System.err.println(f.getName());
}
于 2012-05-07T21:07:11.243 に答える