如何创建一个简单的段落类
我一直在试图建立一个类可以做到以下几点:
•设置:字体,对准(左,中,右,对齐)
•一种有效的方式将append
文本添加到文档中。
文本并不需要是可选择或可编辑。 我必须能够覆盖的文字画/渲染。如何创建一个简单的段落类
我发现JDK JTextComponent
类是很难有效地使用,因为这是我迄今为止,但它远不是我想要实现:
public class Paragraph extends JTextPane{
public Paragraph(){
this.setFont(Fonts.PARAGRAPH);
this.setOpaque(false);
}
// ridiculously slow
public void append(String s) {
SimpleAttributeSet def = new SimpleAttributeSet();
StyleConstants.setForeground(def, Colors.PARAGRAPH);
Document d = getDocument();
try {
d.insertString(d.getLength(), s, def);
} catch (BadLocationException ble) {
}
}
}
问题:有没有什么图书馆可以节省我重新发明*的时间?
如果不是,我该如何去扩展JDK的实现?谢谢
你的文档应该是StyledDocument实例。然后使用Document实例的setParagraphAttributes()方法。
对于多个附加使用一个单独的文件(未设置到JTextPane的实例。
使用套件OT创建一个新的空文档实例。呼叫你所有的追加,然后setDocument(theDocInstance)到的JTextPane。
听起来很有趣,我会放弃它。 – rtheunissen 2012-02-13 10:05:52
好吧,这很好,很快,但我不知道现在如何设置'字体'?我可以看看它。谢谢。 – rtheunissen 2012-02-13 10:10:32
您可以像以前一样插入属性。插入字符串后,通过setParagraphAttributes()方法将段落属性应用于插入的片段。 – StanislavL 2012-02-13 10:21:16
_save我重新发明*_简单:不要;-)你认为需要修复的问题是什么? “高效”是什么意思? – kleopatra 2012-02-13 09:46:20
忘记了:_never_子类只是配置 – kleopatra 2012-02-13 09:48:51
@kleopatra你能解释你的第二个评论多一点吗? – rtheunissen 2012-02-13 10:05:13