工具提示位于JTextArea中的插入位置下方

时间:2012-06-27 04:16:43

标签: java swing tooltip jtextarea caret

我正在尝试在插入位置下方显示工具提示,就像Eclipse在重命名局部变量时提示“输入新名称,按输入重构”一样。我假设我不能使用ToolTip,因为它们绑定到鼠标而不是插入符号,因此我必须根据我的目的调整ToolTipManager.showTipWindow()代码。这里,唯一的问题是以像素计算插入位置。我试过了:

Caret c = editor.getCaret();
Point location = c.getMagicCaretPosition();

随后使用location导致NPE。我猜这种情况发生在插入符号不可见时,因此该方法不可靠。有没有办法将TextArea中的字符偏移量转换为Point位置?

1 个答案:

答案 0 :(得分:2)

使用modelToView()的{​​{1}}方法。