1

现在我在 JScrollPane 中有一个 JTextArea。对于当前内容,它同时显示垂直和水平滚动条。我正在尝试实现一个搜索功能,用户可以在其中搜索某个字符串,并将插入符号位置设置为该字符串的第一次出现。但是,当我设置插入符号位置时,似乎 JScrollPane 仅垂直滚动。因此,水平离开 JTextArea 的匹配字符串将完全丢失,水平滚动条根本不会滚动。

我正在使用 setCaretPosition()JTextArea的基本功能

有谁知道为什么我的 JScrollPane 没有使用水平移动setCaretPosition()

编辑:

看起来水平滚动条正在滚动,但它移动得很少,几乎看不到。我只能看到角色的第一个像素。有没有办法让滚动条中心(或尽可能多)到插入符号的位置?

4

1 回答 1

1

您应该能够使用Visible Caret Listener

或者您也可以查看Scroll Pane 中的 Center Line。它仅使线条垂直居中,但您也可以自定义代码以使其水平。

于 2011-01-08T06:34:55.630 回答