gpt4 book ai didi

java - 如何自定义JLabel缩写文本

转载 作者:行者123 更新时间:2023-12-01 14:38:40 25 4
gpt4 key购买 nike

当标签中的文本太长时,JLabel 将其缩写并在末尾添加 ...。我如何自定义此文本?

我有缩写为长文本的方法,但现在我不知道如何将它传递给 JLabel:

public static String abbreviateMiddle(String str, String middle, int length, int lengthSuffix) {
if (StringUtils.isEmpty(str) || StringUtils.isEmpty(middle)) {
return str;
}

if (length >= str.length() || length < (middle.length() + 2) || lengthSuffix > length
|| str.length() < lengthSuffix || length - middle.length() < lengthSuffix) {
return str;
}

int targetSting = length - middle.length();
int endOffset = str.length() - lengthSuffix;
int startOffset = targetSting - lengthSuffix;

StrBuilder builder = new StrBuilder(length);
builder.append(str.substring(0, startOffset));
builder.append(middle);
builder.append(str.substring(endOffset));

return builder.toString();
}

最佳答案

如图here ,标签的 UI 委托(delegate)根据 layoutCL() 中的要求添加省略号。调整框架大小以查看效果。您可以拦截结果以返回您喜欢的任何String

关于java - 如何自定义JLabel缩写文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16217798/

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