我已经实现了两种方法,以便在JTextPane 中添加文本和超链接。问题是超链接显示为居中对齐,而不是文本(我希望两者都左对齐)。
方法是:
public void addText (String log, Color c, boolean bold) {
StyledDocument doc = jTextPane.getStyledDocument();
SimpleAttributeSet attrs = new SimpleAttributeSet();
StyleConstants.setFontFamily(attrs, "Calibri");
StyleConstants.setFontSize(attrs, 13);
StyleConstants.setForeground(attrs, c);
StyleConstants.setBold(attrs, bold);
try {
doc.insertString(doc.getLength(), log, attrs);
} catch (BadLocationException ex) {
Logger.getLogger(FrameLog.class.getName()).log(Level.SEVERE, null, ex);
}
}
public void addHyperlink (URL url, String text) {
StyledDocument doc = jTextPane.getStyledDocument();
SimpleAttributeSet hrefAttr = new SimpleAttributeSet();
hrefAttr.addAttribute(HTML.Attribute.HREF, url.toString());
SimpleAttributeSet attrs = new SimpleAttributeSet();
attrs.addAttribute(HTML.Tag.A, hrefAttr);
StyleConstants.setFontFamily(attrs, "Calibri");
StyleConstants.setFontSize(attrs, 13);
StyleConstants.setForeground(attrs, Color.blue);
try {
doc.insertString(doc.getLength(), text, attrs);
} catch (BadLocationException e) {
e.printStackTrace(System.err);
}
}
结果是这样的:
有谁知道我该如何解决这个问题?
长风秋雁
猛跑小猪
相关分类