【问题标题】:Disable Word wrap in JTextPane在 JTextPane 中禁用自动换行
【发布时间】:2010-01-05 22:57:51
【问题描述】:

我找不到在 JTextPane 中关闭自动换行的简单方法。我不能使用 JTextArea 因为我需要为不同的文本使用不同的颜色。我有这些大而丑陋的线条,在打开自动换行后变得更加丑陋。

JTextArea 有一个 setLineWrap() 方法,但我找不到 JTextPane 的方法。为什么?

【问题讨论】:

    标签: java swing


    【解决方案1】:

    好的,我找到了一个简单的解决方案。将 JTextPane 放入带有 Border 布局的 JPanel 的中心。然后,将 JPanel 放入 JScrollPane。

    因此,层次结构如下所示:

    • JScrollPane
    • JPanel(带边框布局)
    • JTextPane

    JScrollPane 包含其下方的所有内容,而 JTextPane 位于其上方的所有内容中。

    我不确定为什么会这样,但确实如此。

    【讨论】:

    • 我认为这行得通的原因是,当文本窗格位于具有 ScrollPane 中的 BorderLayout(作为中心)的面板中时,它的首选大小会增长到内容所需的任何大小(即borderlayout 给它尽可能多的空间,因为它在滚动窗格中,所以它可以随心所欲地增长。当它直接在面板或框架中时,它的大小受面板/框架大小的限制。一旦文本长度> 可用长度,JTextPane 开始包装单词以适应可用空间(已修复)。
    • 说得好! (我必须多说几句,否则我不会发表此评论)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-10
    • 1970-01-01
    • 1970-01-01
    • 2021-08-27
    • 2013-12-20
    • 2018-05-04
    相关资源
    最近更新 更多