gpt4 book ai didi

java - 如何将JTextArea行数的值转换为Dimension height_JAVA

转载 作者:行者123 更新时间:2023-12-01 17:58:28 25 4
gpt4 key购买 nike

我试图根据 JTextArea 中 getLineCount 函数的返回值在 ScrollPane 中设置高度。当我在 ScrollPane 的 Dimension 中将值设置为高度时,它真的很小。我添加了 *20 以获得最接近我期望的结果。然而,使用这个技巧,getLineCount 的数字越大,它的精确度就越低,这意味着 JScrollPane 的高度变得比我希望的要大。

我需要一个公式来在它们之间转换指标。但是,我不知道它们返回/使用的确切指标是什么,除非它们是 int 值。

如果有一个内置库可以转换这两者,它也可能很有用。网上关于这个问题的帖子似乎不多。有人遇到过这个问题吗?

int height= textArea.getLineCount(); 
JScrollPane scrollPane = new JScrollPane(textArea);
scrollPane.setPreferredSize(new Dimension(1, height* 20));

最佳答案

这有什么意义呢?如果您尝试将滚动 Pane 的大小调整为文本区域的大小,则不需要滚动 Pane 。

不要尝试管理大小。不要尝试使用 setPreferredSize() 方法。

相反,您可以使用 JTextAreasetRows(...) 方法定义要在文本区域中显示的行数,而无需滚动。

这将允许文本区域根据文本区域的行和字体确定其首选大小。滚动 Pane 的大小将自动调整为文本区域的首选大小。

如果添加更多行数据,则会出现滚动条。

关于java - 如何将JTextArea行数的值转换为Dimension height_JAVA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42818942/

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