[英]how to append css/html table in jtextpane
我试图将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; 边框宽度:1px; 边框颜色:#999999; 边界崩溃:崩溃; } table.imagetable th {背景:#b5cfd2 url('cell-blue.jpg'); 边框宽度:1px; 填充:8px; 边框样式:实心; 边框颜色:#999999; } table.imagetable td {background:#dcddc0 url('cell-grey.jpg'); 边框宽度:1px; 填充:8px; 边框样式:实心; 边框颜色:#999999; }
您必须声明在JTextPane中使用的文本类型
jtextPane.setContentType("text/html");
如果这不起作用,请尝试使用正确的<html>
包含您的文本。 我前一次遇到相同的问题,我正在寻找特定的代码。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.