我正在尝试将css / html表'追加'到jtextpane。
当我这样做时: setText 就像这样:
jtextpane.setText(css)
我得到了理想的结果[完美!]:
但是当我尝试将追加文本添加到jtextpane时,如下所示:
int len = jtextpane.getDocument().getLength();
jtextpane.setCaretPosition(len);
jtextpane.replaceSelection(css);
我得到这样嵌入的html代码:
问:如何在jtextPane中附加表的结果(而不是代码)?我假设我在使用replaceSelection做错了什么?!提前致谢
编辑 - 其他信息:
public static void appendToPane(JTextPane jtextpane, String userText, Color color) { StyleContext sc = StyleContext.getDefaultStyleContext(); AttributeSet aset = sc.addAttribute(SimpleAttributeSet.EMPTY, StyleConstants.Foreground, color); aset = sc.addAttribute(aset, StyleConstants.FontFamily, "Myriad Pro"); aset = sc.addAttribute(aset, StyleConstants.FontSize, 20); int len = jtextpane.getDocument().getLength(); jtextpane.setCaretPosition(len); jtextpane.setCharacterAttributes(aset, false); jtextpane.replaceSelection(userText); }
关于jtextpane的实例化我有:
jtextpane.setContentType( “text / html的”);
原始的css字符串是:
table.imagetable { font-family:verdana,arial,sans-serif; 字体大小:11像素; 颜色:#333333; border-width:1px; border-color:#999999; 边界崩溃:崩溃; } table.imagetable th { 背景:#b5cfd2 url('cell-blue.jpg'); border-width:1px; 填充:8px; 边框式:坚固; border-color:#999999; } table.imagetable td { 背景:#dcddc0 url('cell-grey.jpg'); border-width:1px; 填充:8px; 边框式:坚固; border-color:#999999; }
答案 0 :(得分:1)
您必须声明在JTextPane中使用的文本类型
jtextPane.setContentType("text/html");
如果这不起作用,请尝试使用正确的<html>
包含您应该执行的文本。我以前遇到同样的问题,我正在寻找一个特定的代码。