gpt4 book ai didi

java - 刷新文本时保持 EditorPane 中的先前位置

转载 作者:行者123 更新时间:2023-12-01 19:16:16 24 4
gpt4 key购买 nike

这是一个困扰我多年的问题。用户正在滚动浏览 JEditorPane 中包含的文本文档,而 JEditorPane 又包含在 JScrollPane 中。用户使用更改文本的按钮执行某些功能(它突出显示文本的某些部分)。然后,我刷新 JeditorPane 中的文档以反射(reflect)突出显示(使用 html 标签)。但是当我这样做时,文档会滚动回顶部。我希望文档保持在用户执行操作之前所处的位置。请注意,用户尚未选择文档中的任何文本,因此我无法滚动到选择点(如果选择了文本,该技术确实有效,但可惜在这种情况下我无法做到这一点)。如何保留 JScrollPane 中的位置并滚动到用户在执行操作之前所在的位置?

谢谢

最佳答案

您可以使用 JViewport.scrollRectToVisible() 跳转到 JScrollPane 中文档的特定部分。您可以在使用 JViewPort.getViewRect() 执行操作之前捕获当前位置

http://download.oracle.com/javase/6/docs/api/javax/swing/JViewport.html

关于java - 刷新文本时保持 EditorPane 中的先前位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6554263/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com