在 JTextArea 中停止水平滚动

Posted

技术标签:

【中文标题】在 JTextArea 中停止水平滚动【英文标题】:stop horizontal scrolling in JTextArea 【发布时间】:2011-10-16 05:46:07 【问题描述】:

我想将JTextArea 添加到应用程序。通常,该 textarea 包含大量内容,并且在运行该应用程序时会同时出现水平和垂直ScrollBars。我想删除水平滚动;我发现有可能 HORIZONTAL_SCROLLBAR_NEVER 字段,但它没有显示完整的内容(它没有水平包装并将内容移动到下一行)。如何克服这一点。我想停止水平滚动并将内容放在下一行而不滚动一行。

【问题讨论】:

查看here 示例。 【参考方案1】:

试试这个:

yourJTextArea.setLineWrap(true);
yourJTextArea.setWrapStyleWord(true);

【讨论】:

你不需要设置水平滚动策略,只需要设置环绕策略。 移除显式水平滚动策略更改;这是不必要的。 这应该是公认的答案,对我来说很好!【参考方案2】:

您可以更改滚动条策略:

JScrollPane.setHorizontalScrollBarPolicy(HORIZONTAL_SCROLLBAR_NEVER);

这将禁用水平滚动条

【讨论】:

-1,为什么有人会赞成这个答案?问题清楚地表明发布者已尝试使用“HORIZONTAL_SCROLLBAR_​​NEVER”,但它并没有达到发布者想要的效果。 原始帖子中没有任何关于 HORIZONTAL_SCROLLBAR_​​NEVER 的内容,如果 OP 在没有评论的情况下编辑他的帖子,那不是我的错。 点击“已编辑”标签右侧的链接,即可看到原文。 我错了,我发誓那里什么都没有。 很抱歉,我认为这是我的错误,因为我没有在原始帖子中突出显示“HORIZONTAL_SCROLLBAR_​​NEVER”。我说了但没有强调。很抱歉,感谢您的回答。

以上是关于在 JTextArea 中停止水平滚动的主要内容,如果未能解决你的问题,请参考以下文章

JTextArea 空间不足?可以容纳多少文字,我可以容纳更多吗?

JTextArea中开启了自动换行怎么得到文本框中的行数

第九周学习视频

如何在 Java GUI 中设置 JTextArea 的自动滚动?

java 怎么在JtextArea里设置滚动条

Java / Swing:JScrollPane中的JTextArea,如何防止自动滚动?