当前位置: 首页 > 知识库问答 >
问题:

Java FX–TextArea的一行中有多少个字符?[重复]

曹普松
2023-03-14

如何计算一行中可见字符的数量(没有水平滚动!)取决于区域的宽度?< br >我使用等宽字体,所以所有字符都有相同的宽度。可以通过字体大小来计算字体字符的宽度吗?

共有1个答案

司空实
2023-03-14

是的,可以计算它们。即使使用自定义字体。您可以使用字体度量类。

Font font = Font.font("YourFont", 14);
FontMetrics fontMetrics = Toolkit.getToolkit().getFontLoader().getFontMetrics(font);
double length = fontMetrics.computeStringWidth("The text ");

但我想这是错误的方向?

但是,如果您的字体是等宽的,您可以计算一个字符的宽度,然后只需将文本区域的宽度除以一个字符的宽度,即可获得每行的最大字符数。

double widthPerChar = fontMetrics.computeStringWidth("A");
double maxCharsPerLine = textArea.getWidth() / widthPerChar;
 类似资料:
  • 问题内容: 从服务器以UTF-8发送时,我有一个大约500K的JavaScript字符串。如何用JavaScript判断其大小? 我知道JavaScript使用UCS-2,因此每个字符2个字节。但是,这取决于JavaScript实现吗?还是页面编码或内容类型? 问题答案: 值不依赖于实现,根据ECMA-262第三版规范,每个字符代表_UTF-16文本_ 的 单个16位单元 : 4.3.16字符串值

  • 本文向大家介绍输入一行字符,统计其中有多少个单词。相关面试题,主要包含被问及输入一行字符,统计其中有多少个单词。时的应答技巧和注意事项,需要的朋友参考一下 【参考答案】

  • 可能重复:数组值计数javascript 我有一个数组,其中包含几个重复项,我试图实现的是计算每个唯一字符串在这个数组中有多少重复项。 数组看起来像这样 因此我想做这样的事情 但我不确定该如何编写代码。我在想,用每个唯一的字符串创建一个对象,然后在原始数组中循环,将每个字符串与其对象匹配,并将其数字增加1,然后在对象上循环,以查看哪些单词具有最多的重复项。。。 但这似乎是一种过于复杂的方法。

  • 本文向大家介绍一个JavaScript处理textarea中的字符成每一行实例,包括了一个JavaScript处理textarea中的字符成每一行实例的使用技巧和注意事项,需要的朋友参考一下

  • 问题内容: 我的朋友给我发了一个问题,他在一次关于字符串对象的Java认证模拟考试中看到了一个问题: 调用此方法时将创建多少个字符串对象?考试给出的正确答案是3。但是我认为是5。 “嗨” “ 5” “ HI5” “H” “H” 我错了吗? 问题答案: String makeStrings() { String s = “HI”; //String literal s = s + “5”; //co

  • 问题内容: 我们正在TextArea应用程序中使用JavaFX的控件,并尝试将其与 集成在一起-例如,当用户输入词典中没有的错误单词时,该单词将突出显示。 有什么办法可以突出显示控件中的单词吗?我在中没有看到任何选择,因此,如果有人可以建议一种方法? 我想,可能有可能使用组件并用分别为单词加上颜色。但是,这会带来很多不同的拼写检查问题,例如html标签和字数统计。 问题答案: JavaFX Tex