2015-10-08 2 views
-2

Я создал просмотрщик txt-файлов в Java, но есть одна функция, за которую я застрял уже некоторое время. Когда пользователь правой кнопкой мыши нажимает слово из текстового текста, он должен сохранять его в переменной. Кто-нибудь знает как? ThanksJava JTextArea get right clicked word

ответ

0

JTextComponent.getCaretPosition - это то, что вы ищете; и работайте оттуда, чтобы найти слово. Или, может быть, getSelectedText, если требуется, чтобы слово было выбрано двойным щелчком.

0

Щелчок правой кнопкой мыши не меняет положение каретки, поэтому метод getCaretPosition() будет работать, только если каретка расположена на выбранном вами слове.

Для более общего подхода, вы можете использовать его в вашем MouseListener:

int offset = textArea.viewToModel(event.getPoint()); 
int start = Utilities.getWordStart(textArea, offset); 
int end = Utilities.getWordEnd(textArea, offset); 
String text = textArea.getText(start, end - start);