Получить позицию XY из позиции каретки в JTextArea

Я пытаюсь создать редактор, в котором есть всплывающее окно (JPopupMenu) каждый раз, когда пользователи набирают любую букву. Может быть, чтобы представить, как работает мой редактор, как и любой компилятор, такой как NetBeans, когда мы набираем точку, функция появляется.

Я узнал о JPopupMenu из здесь. JPopupMenu нуждается в позиции XY. Моя идея состоит в том, чтобы получить позицию XY из позиции каретки JTextArea. Мой вопрос: возможно ли получить позицию XY из позиции каретки (текстовый курсор) в JTextArea или другом JTextComponent? Или, может быть, есть какое-то лучшее решение для этого случая?

Спасибо раньше. Извините, не силен в английском. :D


person TblsX    schedule 18.09.2013    source источник


Ответы (1)


Rectangle rectangle = textArea.modelToView( textArea.getCaretPostion() );

Таким образом, вы, вероятно, использовали бы x и y + height из прямоугольника для позиционирования всплывающего окна.

person camickr    schedule 18.09.2013
comment
Хороший! Большое спасибо :D - person TblsX; 18.09.2013