在Eclipse TextEditor中更改光标位置时收到通知

在Eclipse TextEditor中更改光标位置时收到通知,eclipse,eclipse-plugin,selectionchanged,Eclipse,Eclipse Plugin,Selectionchanged,我正在开发一个eclipse插件,我想在上下文菜单中添加一些操作。但实际上,我想根据编辑器中的文本选择在开始前准备结果,并在选择菜单项时显示结果。 我读了那篇文章-所有接口(ISelectionListener,ISelectionChangedListener等)都允许处理SelectionChanged事件,但编辑器仅在选择长度也发生变化时才计算更改-因此,在编辑器中简单的单击不会触发事件,尽管我想得到单词(例如)如果光标现在位于单词内部且长度为0,则作为选择 因此,问题是-在零长度值变化的

我正在开发一个eclipse插件,我想在上下文菜单中添加一些操作。但实际上,我想根据编辑器中的文本选择在开始前准备结果,并在选择菜单项时显示结果。 我读了那篇文章-所有接口(
ISelectionListener
ISelectionChangedListener
等)都允许处理
SelectionChanged
事件,但编辑器仅在选择长度也发生变化时才计算更改-因此,在编辑器中简单的单击不会触发事件,尽管我想得到单词(例如)如果光标现在位于单词内部且长度为0,则作为选择


因此,问题是-在零长度值变化的情况下向下搜索光标位置/偏移量/选择的最简单解决方案是什么?

在这种情况下,您还必须使用KeyListener和MouseStener。例如,请查看org.eclipse.jface.text.PaintManager,它会侦听所有这些事件。

如果您正在扩展
TextEdit或者
您可以重写
handleCursorPositionChanged()
方法来触发事件并使用
getCursorPosition()
字符串的形式获取光标位置

感谢您的回复。找不到可以将自己的键和鼠标侦听器添加到编辑器中的位置。似乎扩展然后替换默认编辑器是最简单的方法。请说明原因以及您建议此答案的原因。并阅读常见问题解答以了解如何使用我用适当的方式回答。