向BorderLayout.SOUTH添加JTextPane会导致JScrollPane滚动

时间:2012-07-02 18:39:57

标签: java swing jscrollpane jtextpane caret

我有一个包含在JScrollPane中的JPanel。 JPanel的组件已添加到其NORTH,CENTER,WEST和SOUTH区域(BorderLayout)。

当我将JTextPane添加到SOUTH位置时,滚动窗格会滚动显示文本。我不希望滚动窗格从其最顶端位置移动。我该如何防止这种情况?

1 个答案:

答案 0 :(得分:3)

如果没有更多详细信息,您可以尝试将默认插入符设置为NEVER_UPDATE,自Java 5开始提供。

JTextPane jtp = new JTextPane();
DefaultCaret caret = (DefaultCaret) jtp.getCaret();
caret.setUpdatePolicy(DefaultCaret.NEVER_UPDATE);