gpt4 book ai didi

java - 如何使溢出的TextArea截断文本并在最后显示省略号?

转载 作者:行者123 更新时间:2023-11-30 05:00:57 25 4
gpt4 key购买 nike

我知道这似乎是一个愚蠢的问题,但到目前为止我找到的所有答案都要求我使用 html 标签。有更简单的方法吗? TextArea 的大小可能会改变。

最佳答案

覆盖insertString Document 的方法,以便每当插入字符串时,都会删除多余的字符并插入省略号。这是一个例子:

JTextArea area = new JTextArea();
area.setDocument(new PlainDocument() {
private static final long serialVersionUID = 1L;
private static final int MAX = 100;

@Override
public void insertString(int offs, String str, AttributeSet a) throws BadLocationException {
super.insertString(offs, str, a);

//has the length been exceeded
if(getLength() > MAX) {

//remove the extra characters.
//need to take into account the ellipsis, which is three characters.
super.remove(MAX - 3, getLength() - MAX + 3);

//insert ellipsis
super.insertString(getLength(), "...", a);
}
}
});

关于java - 如何使溢出的TextArea截断文本并在最后显示省略号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6747156/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com