Java 如何防止JTextPane水平增长。。。?

Java 如何防止JTextPane水平增长。。。?,java,swing,Java,Swing,我正在构建一个带有几个选项卡的应用程序,其中包含带有JTextPanes的jpanel。测试时,我写的文本比屏幕长,JTextPane水平增长。有人知道阻止它像那样生长的方法吗?此外,我如何强制文本在完成一行后跳转到JTextPane上的下一行 谢谢 更新:我选择了Julien Gauthier提到的第一个选项,即使用JTextArea并启用包装。它工作得很好。考虑到我的文本框(或区域)的大小足以满足我作为文本捕获设置的限制(800个字符),我不需要向文本区域添加滚动条。而且,我使用JTextA

我正在构建一个带有几个选项卡的应用程序,其中包含带有JTextPanes的jpanel。测试时,我写的文本比屏幕长,JTextPane水平增长。有人知道阻止它像那样生长的方法吗?此外,我如何强制文本在完成一行后跳转到JTextPane上的下一行

谢谢

更新:我选择了Julien Gauthier提到的第一个选项,即使用JTextArea并启用包装。它工作得很好。考虑到我的文本框(或区域)的大小足以满足我作为文本捕获设置的限制(800个字符),我不需要向文本区域添加滚动条。而且,我使用JTextAreas而不是JTextPanes保存文本到文件的函数也没有遇到任何问题。非常感谢你的帮助

我写的文本比屏幕长,JTextPane水平增长。有人知道阻止它像那样生长的方法吗

将文本窗格添加到JScrollPane,然后将滚动窗格添加到框架。然后,文本将换行,并在需要时显示滚动条

阅读上Swing教程中的部分,了解文本窗格的工作示例

我写的文本比屏幕长,JTextPane水平增长。有人知道阻止它像那样生长的方法吗

将文本窗格添加到JScrollPane,然后将滚动窗格添加到框架。然后,文本将换行,并在需要时显示滚动条


阅读上Swing教程中的部分,了解文本窗格的工作示例。

您有几种可能:

  • 您可以首先用JTextArea替换JTextpane,然后使用JTextArea.setLineWrap(boolea wrap)

  • 您可以在JTextPane中使用editorKit,它将包装文本。请看这个例子:

  • 您可以使用JScrollPane,但如果使用长句,结果会很糟糕


祝你好运。

你有几种可能性:

  • 您可以首先用JTextArea替换JTextpane,然后使用JTextArea.setLineWrap(boolea wrap)

  • 您可以在JTextPane中使用editorKit,它将包装文本。请看这个例子:

  • 您可以使用JScrollPane,但如果使用长句,结果会很糟糕


祝你好运。

你可以先把它们放在
JScrollPane
sThanks@MadProgrammer中,事实上我已经在一个JScrollPane中有了每个面板。
JTextPane
或包含
JTextPane
的面板我有以下结构:JPanel(带网格布局)->JTabbedPane->带几个JPanel,大多数选项卡都使用JScrollPane->,然后是每个选项卡的其余组件,包括标签、组合框和tex窗格。您可以先将它们放入
JScrollPane
sThanks@MadProgrammer,事实上,我已经在一个JScrollPane中拥有了每个面板。
JTextPane
或包含
JTextPane
的面板有以下结构:JPanel(带GridLayout)->JTabbedPane->带有多个JPanel,其中大多数带有JScrollPanes->,然后是每个选项卡的其余组件,包括标签,组合框和tex窗格。非常感谢,我用区域替换了窗格,效果很好!非常感谢,我用区域替换了窗格,效果很好!