如何在文本保存在 StringBuffer 中的 Java 文本区域中定位光标位置?我正在尝试在文本编辑器中实现退格功能。API 列出了如何设置数据。我需要获取光标位置,以了解光标在哪个字符位置,而不是光标的屏幕全局坐标。
真诚感谢任何帮助。
如何在文本保存在 StringBuffer 中的 Java 文本区域中定位光标位置?我正在尝试在文本编辑器中实现退格功能。API 列出了如何设置数据。我需要获取光标位置,以了解光标在哪个字符位置,而不是光标的屏幕全局坐标。
真诚感谢任何帮助。
您必须在 中编写KeyListeners
按键事件,并在 中TextArea
保留您所在位置的虚拟光标TextArea
。然后将该偏移量映射到您的StringBuffer
中,没有神奇的方法可以做到这一点。
如果您使用的是 Swing JTextArea
,请使用JTextArea.getCaretPosition()
.
如果您使用的是 AWT TextArea
,请参阅 Jarrod Roberson 的回答。