我正在尝试突出显示JEditorPane
文本字段中的文本并保存所选文本的索引。但是,当我保存选择时,我一直遇到问题。 JEditorPane似乎每次都以不同的方式保存新线。当用户按下回车键时,它会写"\n"
,"\r"
,有时甚至是"\r\n"
。有时,JEditorPane甚至会忽略导致错误选择指数的回车。
当用户按下回车键时,是否可以获得一致的行为?
答案 0 :(得分:1)
为什么使用JEditorPane?这是为了显示HTML和HTML通常没有换行符。你使用" br" HTML中的标记。对于普通文本,您应该使用JTextPane或JTextArea。
我正在尝试突出显示文字
字符串中的文本取决于您使用的组件以及是否从Document或组件中获取文本。
一般情况下,您应该从文档中获取文本,因为文档只存储" \ n"所以你应该能够正确计算偏移并突出显示文本。
当您从组件中获取文本时,平台新行String将插入到文本中,这将导致您的偏移问题。
有关详细信息,请参阅Text and New Lines。